开发者

Where should Rails 3 custom validators be stored?

I'开发者_Python百科ve seen docs/websites show that custom validators should go in a /lib or /lib/validators directory of a project. I've found (by reading an answer to another post) that they only seem to work in config/initializers. Does anyone know, or have a pointer to official documentation that shows where custom validators should live?


If you place your custom validators in app/validators they will be automatically loaded without needing to alter your config/application.rb file.


If you add this to your /config/application.rb file:

config.autoload_paths += %W["#{config.root}/lib/validators/"]

Then Rails will automatically load your validators on start up (just like /config/initializers/), but you keep the clean structure of having your validators in one nice, well named spot.


lib/validators seems by far the cleanest. However you may need to load them in before your models, so probably from an initializer.


Here's the official docs about custom validations. AFAIK its a good practice to keep them in the relevant models.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜