我正在开发一个Rails 5应用程序,并且有多种方法适用于多个模型。
我正考虑将它们放入:
lib/model_extension.rb
然后,在使用这些方法的每个模型中,我都会添加:
include ModelExtension
对于Rails 5.1,你会建议采用不同的方式吗?
答案 0 :(得分:1)
创建ActiveSupport::Concern
并将其放入app/models/concerns
。这是Rails 4+ http://api.rubyonrails.org/v5.1/classes/ActiveSupport/Concern.html
您不必遵循此约定。有关一些好的讨论,请参阅此问题:How to use concerns in Rails 4
答案 1 :(得分:0)
这是concerns的用途。他们应该进入app/models/concerns
,rails new
为您创建。