繁体   English   中英

通过与Ruby on Rails的关联进行查询

[英]Querying through associations with Ruby on Rails

我有一个关于使用Ruby on Rails通过几个关联进行查询的问题。

这个问题涉及跨三个模型的查询。 (事件,格斗,战士)。 模型的重要部分如下:

  • 一个事件有多次战斗。
  • 每个战斗都有两个战士:fighter1和fighter2。

我需要编写的功能是检索具有给定战斗机的所有战斗的列表。 但是,由于我们正在运行某些奇怪的本地化操作,因此需要通过事件模型来完成此操作。

是否有捷径可寻?

假设

class Event
  has_many :fights
end

class Fight
  has_many :fighters
end

然后,您可以执行以下操作:

events = Event.joins(:fights => :fighters).where("fighters.name = 'sally'")
fights = events.inject([]){|a,e| a = a + e.fights; a }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM