class Entry < ActiveRecord::Base
belongs_to :user
belongs_to :job
end
class User < ActiveRecord::Base
has_many :entries
has_many :jobs, through: :entries
end
class Job < ActiveRecord::Base
belongs_to :job_type
has_many :entries
has_many :users, through: :entries
end
我已经尝试了一段时间,似乎无法得到这个。我想通过条目选择分配给用户的所有作业(user_id:1)。任何帮助都会很棒。
注意:我试过
Job.find(3).entries
但只返回作业编号为3的条目。
答案 0 :(得分:1)
User.find(1).jobs
会为您提供您正在寻找的内容吗?
答案 1 :(得分:1)
u = User.find(1)
what_you_want = u.jobs
答案 2 :(得分:1)
其他(当前)答案至少需要两个数据库查询。这应该可以为你提供你想要的东西:
Job.joins(:users).where(users: { id: 1 })