2010-05-18 49 views

回答

6

使用habtm本身沒有什麼不好。許多人不使用這種關聯的原因是他們使用has_many:through代替。爲什麼?因爲它更通用。雖然HABTM「隱藏」了中間表,但在使用has_many時:通過中間人本身就是一種資源 - 這通常是件好事(如果沒有,則可以爲關係添加時間戳)。當需要爲這種關係添加一些行爲或屬性時(當以面向資源的方式設計系統時),您會遇到很多情況。

+0

我開始看到這個我自己的重要性......隨着規格的變化,增加的靈活性確實是有益的。但好奇的是:如果我在用戶和餐飲之間存在着一種關係,但我現在需要中介表,那麼我會稱中介表是什麼?它是一個全新的資源,稱爲meal_user或什麼? – dmonopoly 2011-07-31 17:44:27

+0

我意識到這是一個較老的問題,但通常你會將它稱爲與其他屬性和存儲它們的目的有關,因爲它現在是一個新的資源。 例如,如果它是五分之一的膳食分數,那可能包含「分級」資源。 – 2012-12-04 07:23:37

相關問題