2013-01-16 26 views
-1

我的情況:我想在同一模型中使用HABTM和hasOne關係。不幸的是它不會將groupleaders用戶信息加載到用戶組中。多個模型關聯到同一個表

  • 用戶可以擁有多個用戶組
  • 一個用戶組可以有一個groupleader(用戶ID)

任何幫助apreciated

我有一個表格佈局是這樣的:


個用戶

id 
username 

user_usergroups

id 
user_id 
usergroup_id 

羣組

id 
groupname 
groupleader (value is user_id) 

羣組模型

public $hasAndBelongsToMany = array(
    'User' => array(
     'className' => 'Users', 
     'foreignKey' => 'usergroup_id', 
     'associationForeignKey' => 'user_id' 
    ) 
); 


public $hasOne = array(
    'GroupLeader' => array('className' => 'User', 
    'foreignKey' => 'usergroup_groupleader') 
); 

回答

1

以下失蹤控制器

$this->Staffgroup->recursive = 1; 
0

添加

public $hasAndBelongsToMany = array(
'User' => array(
    'className' => 'Users', 
    'joinTable'=>'user_usergroups', 
    'foreignKey' => 'usergroup_id', 
    'associationForeignKey' => 'user_id' 
) 

);

現在,當您檢索用戶組控制器中的信息時,它將包含用戶組領導的信息。

+0

我的問題是關於hasOne關係,而不是HABTM關係 –

相關問題