簡體   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