Rails—获取祖父母相同的所有记录
Rails—Get all records with same grandparent
我有三个模型,Organisation
有很多User
有很多Project
。
如何查询属于同一组织的所有 Project
?
目前我有 Project.joins(user: [:organisation])
,但这只会获取所有 Project
并将它们按 User
分组。我不确定如何指定 Organisation
id。
假设您有一个名为 organisation
的局部变量,其中填充了您感兴趣的组织,您可以在查询中添加一个 where
。
Project.joins(user: [:organisation]).where('organisations.id = ?', organisation.id)
但使用您已建立的关联(或创建新的关联)可能更有用
class User < ActiveRecord::Base
has_many :projects
end
class Organisation < ActiveRecord::Base
belongs_to :user
has_many :projects, through: :user
end
然后你可以向你的组织询问它的项目:
organisation = Organisation.find(params[:id])
organisation.projects
我有三个模型,Organisation
有很多User
有很多Project
。
如何查询属于同一组织的所有 Project
?
目前我有 Project.joins(user: [:organisation])
,但这只会获取所有 Project
并将它们按 User
分组。我不确定如何指定 Organisation
id。
假设您有一个名为 organisation
的局部变量,其中填充了您感兴趣的组织,您可以在查询中添加一个 where
。
Project.joins(user: [:organisation]).where('organisations.id = ?', organisation.id)
但使用您已建立的关联(或创建新的关联)可能更有用
class User < ActiveRecord::Base
has_many :projects
end
class Organisation < ActiveRecord::Base
belongs_to :user
has_many :projects, through: :user
end
然后你可以向你的组织询问它的项目:
organisation = Organisation.find(params[:id])
organisation.projects