【问题标题】:validate strict with custom exception not working验证严格,自定义异常不起作用
【发布时间】:2015-06-04 17:11:24
【问题描述】:

我有一个模型,它有一个标准的验证方法,但有一个严格的选项和一个自定义的异常。

class Comment < ActiveRecord::Base
     validates :resource,:user,:body,
                presence: true,
                strict: Exceptions::InvalidRequestParams
end

异常模块存在于控制器问题中,并且测试工作正常,app.js 也是如此。但是当我尝试通过 rails 控制台访问特定评论(比如Comment.find(1))时,它会抛出一个

NameError for Comment::Exceptions

我确实知道在模型中调用基于控制器的异常是一种不好的做法,但我不明白为什么测试通过并引发了想要的错误,并且应用程序运行良好但控制台有问题。

有什么建议吗?

更新:看来我的测试也不喜欢验证。我不明白为什么它会自动寻找 Comment::Exceptions 而不是纯 Exceptions 模块。

【问题讨论】:

    标签: ruby rails-activerecord ruby-on-rails-4.2


    【解决方案1】:

    对于问题描述不佳,我深表歉意。似乎问题在于rails没有加载放置Exceptions模块的lib目录。我需要添加

    config.autoload_paths += %W(#{config.root}/lib)
    

    到我的 application.rb 文件

    【讨论】:

      猜你喜欢
      • 2017-11-30
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 2017-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多