Rails 3:放置自定义验证器类的最佳位置在哪里?

时间:2012-02-13 23:37:58

标签: ruby-on-rails-3

我已经看到了很多关于放置自定义验证类(扩展ActiveModel :: EachValidator)的最佳位置的线程,但无法确定哪个是最佳实践。一些线程和教程说把它们放在'lib /'并修改'/config/application.rb',其他线程说如果你只是把它们放在'app / validators'中,它们会被自动包含在内......对此有何看法?这是什么最好的做法?

'libs /'解决方案有一个缺点,因为你必须修改'/config/application.rb',但据我所知,将它放在'app / validators'中会包含它,尽管你必须添加app文件夹的目录。这是正确的吗?谢谢!

1 个答案:

答案 0 :(得分:4)

是的,当您将自定义验证程序放入“app / validators”时,它将自动包含在内。当您使用目录“lib”或“lib / validators”时,您必须将此行放入config / application.rb文件中:

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

config.autoload_paths += %W(#{config.root}/lib/validators)
相关问题