2009-01-07 19 views
1

我在谷歌搜索這沒有一個好的結果。我在CakePHP trac中找到的唯一的topic,沒有「真正的」解釋就關閉了。由於CakePHP就像是用於php的rails端口之一,並且rails支持這一點,所以我想知道爲什麼它不支持此功能。爲什麼CakePHP不支持具有多列的外鍵?


好的。但我想決定我的數據庫模式是如何的,在RoR中你有這個工具,如果你想使用它,你可以在你的風險下做。 btw:我不知道交響樂是否也可以做到這一點。

回答

6

只有CakePHP團隊肯定會知道。球隊之一,內特Abdele,said this約多列主鍵在2007年2月回:

我可以拿出一百萬其他 原因多列主鍵 是一個愚蠢的想法,但我認爲2007年最 重要的是,它 斷網絡上的REST架構, 因爲是 引用一個數據沒有單點,而且 數據現在可在你改變了不 你知道它,所以對象不能再從 一致引用一個URI。

我認爲這也是他對多列外鍵的爭論。

+0

Ouch。弱論據恕我直言。他們被稱爲複合鍵。 – 2009-01-07 06:44:18

+0

密鑰是否爲合成取決於所用列的屬性。 – scronide 2009-01-07 07:12:40

0

您可以通過向關聯添加第二列的條件來獲得相同的結果嗎?

5

有人學習蛋糕說得好:

我學習的是,如果事情是CakePHP中 可笑的困難, 你可能已經得到設計問題。
- asciimo

0

沒有,真正的理由支持多列主鍵是加裝的CakePHP到現有的應用程序。不要宣傳這種做法,因爲它是糟糕的設計,當然,但如果您可以選擇使用多個主鍵而不是重新設計現有管理系統的一大塊,那麼簡單的選擇將是一個非常好的功能。