我是 Rail 新手,正在尝试在 ActiveRecord 中进行查询。我正在尝试获取所有状态为“已登陆”的记录,这些记录已超过 60 天。我的查询一直到获得所有状态为“已登陆”的项目。当我添加“created_at < ?”的最后一个条件时,我总是得到一个空关系。我知道我有符合该描述的项目,所以我在查询中做错了什么并且不理解。我相信我的错误在于日期比较,但我不确定。
1. Projects
belongs_to :status
has_many :project_status_histories
2. Status
has_many :projects
has_many :project_status_histories
3. Project_Status_Histories
belongs_to :status
belongs_to :project
Project.find(:all, :joins => [:project_status_histories, :status], :conditions => {:projects => {:status_id => Status.where(:name => 'Landed').first.id }, :project_status_histories => {:created_at => ["created_at < ?", (Date.today - 60.days)]}})
我尝试使用 dbconsole 逐步构建查询,但没有任何运气。感谢您提前提供的所有帮助。