我正在使用rails 3.2,我想让它更具动感。我想只显示活动作业(取决于它们创建的日期)
class Job < ActiveRecord::Base
scope :is_active, lambda { where("created_at >= DATE(?)", 30.days.ago) }
end
我希望能够在我的类型表中添加一个列,并在其上添加查询。
我添加了我的专栏,我正在寻找类似的东西
class Job < ActiveRecord::Base
belongs_to :type
scope :is_active, lambda { where("created_at >= DATE(?)", type.numberofdays) }
end
我不确定要查找什么,我已阅读有关活动记录的文档。如果您需要更多信息,请与我们联系。
答案 0 :(得分:0)
我认为您不能仅在一个整数值上使用DATE()
。你用的是什么数据库?要查找过去Jobs
内的所有type.numberofdays
,您可以使用具有更新范围的以下内容。
class Job < ActiveRecord::Base
belongs_to :type
scope :is_active, lambda { joins(:type).where("created_at >= :newer_than_date", newer_than_date: Date.today - type.numberofdays) }
end
更新: active_by_type
:
scope :active_by_type, lambda { |type| joins(:type).where("created_at >= :newer_than_date", newer_than_date: Date.today - type.numberofdays) }