Ruby on rails Rails,活动记录。把四张桌子连在一起

Ruby on rails Rails,活动记录。把四张桌子连在一起,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我正在学习RubyonRails,遇到了一个无法解决的活动记录问题。我试图将四个表内部连接在一起,并显示其中的数据 通过运行以下SQL样式的查询,我已经确认了我的数据库模式是正确的。它返回我期望的数据 select * from sailings INNER JOIN travelling_parties on sailings.id = travelling_parties.sailing_id INNER JOIN party_registers on travelling_parti

我正在学习RubyonRails,遇到了一个无法解决的活动记录问题。我试图将四个表内部连接在一起,并显示其中的数据

通过运行以下SQL样式的查询,我已经确认了我的数据库模式是正确的。它返回我期望的数据

 select * from sailings
 INNER JOIN travelling_parties on sailings.id = travelling_parties.sailing_id
 INNER JOIN party_registers on travelling_parties.id = party_registers.travelling_party_id
 inner JOIN users on party_registers.user_id = users.id
 where users.id = 8
在阅读了guides.rubyonrails.org上的优秀文档之后,我仍然无法找到解决方案。下面的查询是我在控制器中提出的,但它似乎没有返回我需要的内容

@sailing = Sailing.joins(:travelling_parties => [{:party_registers => :user}])
如果有人能把我引向正确的方向,我将不胜感激

谢谢

编辑1:这是我的模型。我正在尝试检查user.id=当前_user.id并基于此显示数据

class Sailing
  has_many :travelling_parties
end

class TravelingParty
  has_many :party_registers
  has_many :users, through: :party_registers
end

class PartyRegister
  belongs_to :user
  belongs_to :travelling_party
end

class User
  has_many :party_registers
  has_many :travelling_parties, through: :party_registers
end
编辑2:下面的查询给出了我想要的结果

@sailing=sailing.joins(:training\u parties=>{:party\u registers=>:user})。其中(“users.id”=>current\u user.id)


感谢您的回复。

假设您已经定义了关联,那么您的答案几乎是正确的

class Sailing
  belongs_to :traveling_party
end

class TravelingParty
  belongs_to :party_register
end

class PartyRegister
  belongs_to :user
end


@sailing=sailing.joins(:旅行方=>{:party\u registers=>:user})

假设您已经定义了关联,那么您的答案几乎是正确的

class Sailing
  belongs_to :traveling_party
end

class TravelingParty
  belongs_to :party_register
end

class PartyRegister
  belongs_to :user
end


@sailing=sailing.joins(:traveling\u parties=>{:party\u registers=>:user})

我有
班级航行有很多:旅行党,班级旅行党有很多:party\u registers有很多:用户,通过::party\u registers,类PartyRegister所属:用户所属:旅行方
我有
类帆船有很多:旅行方,类旅行方有很多:注册方有很多:用户,通过::PartyRegister,类PartyRegister所属:用户所属:旅行方
你能发布你的模型吗?还有,你到底想从用户表中返回什么?你能发布你的模型吗?还有,你到底想从用户表中返回什么?