0
我很努力的設計/查詢我的數據庫在新的Rails應用程序的最佳方式。這是我在的地方現在:有沒有更好的方法來構造這些數據庫表?
documents:
title
has_many :document_sections
document_sections:
belongs_to :document
habtm :resources
resources_document_sections:
belongs_to :resource
belongs_to :document_section
resources:
text
所以很容易說document_section.resources
。但document.resources
是給我找麻煩
唯一的辦法我發現做到這一點迄今收集文檔部分的ID,然後運行第二個查詢:
d = Document.last
s_ids = d.document_section_ids
Resource.joins(:document_sections)
.where(document_sections: { id: s_ids })
.uniq
所以這開始壞了,隨着查詢變得更加複雜,情況變得更糟。每次我必須觸及這種關係時,都會變得非常頭疼。
我想知道在佈置這些表格時是否可以遵循不同的模式,這樣對他們進行查詢並不是那麼頭疼?還是有更好的查詢策略,我錯過了?
對此深感抱歉,我忘了在文檔上的'has_many'添加。 'has_many:through'完全符合我的要求,儘管...我很驚訝!出於某種原因,我認爲它不會追蹤多對多的關係。謝謝! – Wheeyls