我使用on Rails的3林心如和我想知道,當我要\ A 現實世界的例子(或更多)和一些建議能\必須使用多態協會和單表繼承的組合,如實現的here at the Polymorphic Association paragraph。例子和建議相結合多形態協會和單表繼承
0
A
回答
0
當您需要將所有內容放在同一對象/表中時使用STI。與其他對象,屬性和驗證的關係可以根據對象的狀態而改變。
當對象與另一個未指定類型的對象相關時使用多態關係。請參閱#max-williams示例
1
根據我的經驗,多態關係=好,STI = PainInTheArse。
我從來沒有見過一個不會變成混亂混亂的STI示例。
如果你有與一個或多個其他類具有相同類型關係的不同事物,則用它們自己的表格將它們保存爲不同的東西。例如,附加文檔:您可能需要將文檔附加到許多不同類型的東西上。例如,爲此使用多態關係,稱爲「可記錄」。
Document
belongs_to :documentable, :polymorphic => true
#expects a documentable_id field (integer) and a documentable_type field (string)
User
has_many :documents, :as => :documentable
Company
has_many :documents, :as => :documentable
相關問題
- 1. 繼承和協會
- 2. 提交表單和創建行動多形態協會
- 3. 類和協議繼承斯威夫特
- 4. 協議的實施和繼承
- 5. 多態和繼承
- 6. 繼承和多態
- 7. 斯威夫特協議繼承和協議一致性問題
- 8. 夫特相關類型和協議繼承
- 9. 多級繼承和多態
- 10. C#:結合DllImport和繼承?
- 11. 多繼承和單例設計模式
- 12. Rails多表繼承和多態關聯
- 13. 斯威夫特協議繼承和動態對象混亂
- 14. 協議方法的繼承
- 15. 協議繼承在swift中
- 16. 繼承協議的URL
- 17. 繼承通用協議
- 18. 使用Swift協議繼承
- 19. 多態性和繼承
- 20. 繼承和多態衝突
- 21. 繼承和多態C++
- 22. 多態性和繼承
- 23. java繼承和多態性
- 24. C++繼承和多態性
- 25. Java的繼承和多態
- 26. 繼承和多態的java
- 27. 靜態新建和繼承
- 28. Swift:func返回類型繼承類和符合一個或多個協議
- 29. 繼承與協會
- 30. 類繼承和多態 - 繪製簡單形狀