2012-08-14 52 views
0
class Games{ 
    var $has_many = array('gameSetting','team','log'); 
} 

class GameSetting {} 

class Team{ 
    var $has_many = array('user','log'); 
} 
class User { 
    var $has_many = array('log'); 
} 

class Log { 
} 

根據官方文檔,如果沒有連接表,我必須創建後綴_id act作爲外鍵。所以在日誌表中有3個外鍵game_id,team_id,user_id。如何在Datamapper + Codeiginter中一對多地命名該字段

我應該如何命名FK列和Datamapper如何知道哪個FK引用了哪個表,並使用相同的後綴_id?

回答

1

首先,您需要確保您的關係已正確配置。這意味着定義這兩個模型中的關係(http://datamapper.wanwizard.eu/pages/settingrelations.html)。

所以,你的登錄模式應該是這樣的:

class Log extends DataMapper { 
    var $has_one = array('game','team','user'); 
} 

日誌表,則僅需要列「game_id」,「TEAM_ID」和「USER_ID」 - DataMapper的就知道到哪裏填充相關的對象。

在文檔中清楚地解釋了這些內容(查看'表內外鍵'):http://datamapper.wanwizard.eu/pages/database.html

相關問題