0
在一個新的Rails應用程序,我必須建立這種關係Rails belongs_to用戶,但多態has_many模型?
Trip -> 1-to-1 -> Plan
Plan -> n-to-n -> Places
Plan -> n-to-n -> Activities
和ofcourse的反之亦然關係爲好..
的表是我正在考慮。是否可以在沒有任何額外表格的情況下直接擁有Trip -> Places
和Trip -> Activities
關係。
如果沒有,那麼什麼可以和處理這種關係,牢記,有可能是這可能與在未來的規劃模型N對N的關係等機型有效的方式。
更新 - 我發現這個問題,並努力回答。對於找人做同樣的,因爲我
ActiveRecord, has_many :through, and Polymorphic Associations
可能有幫助謝謝
但不會將的has_many:通過=>:計劃需要在計劃表中的place_id和ACTIVITY_ID?這不是問題嗎?我想知道是否可以在計劃表中使用通用的x_id&x_type列,然後設置has_many:through =>:plan關聯。這可能嗎? – hashpipe
@hashpipe隨着':through' =>選項,ActiveRecord的檢查你正在通過相關聯,以確定它是如何與目標模型的模型。我只是試圖在Rails 3.2.3中進行確認。我創建了屬於一個'Aaa'模型':bbbs',有屬於許多''一個模型Bbb':cccs',然後設置'Aaa'已經和屬於許多':通過'cccs':BBB '。然後我就可以執行'Aaa.first.cccs',並且SQL是'SELECT「cccs」。* FROM「cccs」INNER JOIN「bbbs_cccs」ON「cccs」。「id」=「bbbs_cccs」。「ccc_id」 INNER JOIN 「商務改善局」 ON 「bbbs_cccs」。 「bbb_id」= 「商務改善局」。 「ID」 WHERE 「商務改善局」。 「ID」= 1' –