我的应用程序中有多个模型用于不同类型的内容,我经常需要获取最近发布的模型。目前,我在我的应用程序控制器中使用helper_method :latest_content
。
这是放置此方法的最佳位置吗?如果是这样,我该如何为它编写rspec测试?
答案 0 :(得分:3)
听起来你在多个模型中都有一个共同的功能。 Rails有concerns
允许你这样做。
# app/models/concerns/searchable.rb
module Searchable
extend ActiveSupport::Concern
module ClassMethods
def last_content
# ... here whatever is the content of :last_content
end
end
end
# app/models/model_x.rb
class ModelX < ActiveRecord::Base
include Searchable
...
end
# app/models/model_y.rb
class ModelY < ActiveRecord::Base
include Searchable
...
end