2010-12-09 102 views
0

我正在使用存儲在字段中的鍵多次與自身關聯的模型。聲明它更具體,這是我的表的一些行的例子:根據名爲物品1到項目3都是互相關聯這一數據項,但不與item0或使用cakephp中的字段將模型與自身相關聯

id   name   association_id 
------------------------------------------------------------------ 
33   item0   1111 
34   item1   2222 
35   item2   2222 
36   item3   2222 
37   item4   NULL 

ITEM4。 問題是我不知道如何在CakePHP中實現這個關聯。它應該是一個hasMany,但它是否有可能連接詞指向自己的同一字段(association_id),而不是指向ID這裏的主鍵? 如果需要連接兩個或更多項目,將會動態生成此association_id。

在此先感謝

回答

0

您需要規範化您的表。爲了做到這一點,你就必須拆分此表像這樣:

associations: 
id | name 

items: 
id | name | association_id 

模型關係將如下所示:

Item belongsTo Association 
Association hasMany Item 

如果association_id只是在你的表中的一些道理,那麼你不需要創建任何額外的關係。只需在分組字段中查詢表即可。

希望有幫助!

+0

剛開始時我的選擇是,但這些關聯並不是真正作爲一個獨立的對象存在,它們只有在物品相互連接時才存在。並且此ID將按需生成,並在不存在關聯的情況下即時刪除。 – mohamnag 2010-12-09 21:43:38