Ruby on rails 在Find子句中使用关联模型的活动记录查询
我有一个金发的时刻,可能是大脑冻结 在我的rails3应用程序中,我有用户和任务。我的用户有很多任务 我有以下到期和过期的任务:Ruby on rails 在Find子句中使用关联模型的活动记录查询,ruby-on-rails,ruby-on-rails-3,activerecord,Ruby On Rails,Ruby On Rails 3,Activerecord,我有一个金发的时刻,可能是大脑冻结 在我的rails3应用程序中,我有用户和任务。我的用户有很多任务 我有以下到期和过期的任务: @due = Task.find(:all, :conditions => ["dueddate >= ? AND AND status = ?", Date.today, false], :include => :taskcategories, :order => "dueddate asc") 在我的任务视图中,我要做的是列出具有到期
@due = Task.find(:all, :conditions => ["dueddate >= ? AND AND status = ?", Date.today, false], :include => :taskcategories, :order => "dueddate asc")
在我的任务视图中,我要做的是列出具有到期任务的用户
由于某种原因,我无法理解它。我试过这个,但不起作用:
@task = Task.all
@user = User.find(:all, :conditions => ["@task.dueddate <= ? AND
@task.status = ?", Date.today + 7.days, false])
@task=task.all
@user=user.find(:all,:conditions=>[“@task.dueddate我想这应该行得通
已更新
User.joins(:tasks)
.where("tasks.dueddate <= ? AND tasks.status = ?", Date.today + 7.days, false).group(:id)
然后将.group(:id)
更改为.group(User.column\u list)
我想这应该行得通
已更新
User.joins(:tasks)
.where("tasks.dueddate <= ? AND tasks.status = ?", Date.today + 7.days, false).group(:id)
并将.group(:id)
更改为.group(User.column\u列表)
那太棒了!我以为我很愚蠢,结果发现我以前没有做过连接。怎么可能只显示唯一的值?我可以在其中看到一些重复的数据。那太棒了!我以为我很愚蠢,结果证明我以前没有做过连接。怎么可能只显示唯一的值?我可以看到一些重复的数据塔塔在那里。