사용자 모델과 커미션 모델을 조인하는 조인 모델 인 UserCommission이 있습니다. 사용자 모델이 조직 모델에 속합니다. 그리고 조직 모델에는 많은 사용자 모델이 있습니다.CakePHP 조인 테이블
array(
(int) 0 => array(
'UserCommission' => array(
'id' => '1247',
'user_id' => '872',
'commission_id' => '13'
),
'User' => array(
'id' => '872',
'organisation_id' => '6',
),
'Commission' => array(
'id' => '13',
'nom' => 'SALARIES CE'
),
'Organisation' => array(
'id' => '6',
'nom' => 'The Organisation #6'
)
),
...
)
모델 협회 : 반환 된 배열과 같이되도록
array(
(int) 0 => array(
'UserCommission' => array(
'id' => '1247',
'user_id' => '872',
'commission_id' => '13'
),
'User' => array(
'id' => '872',
'organisation_id' => '6', // I need data related to Organisation model
),
'Commission' => array(
'id' => '13',
'nom' => 'SALARIES CE'
)
),
...
)
가 어떻게 조직 모델에서 데이터를 얻을 수 있습니다 내 모델 UserCommission에서
는$this->find('all')
와 나는이 배열을 얻을 :
사용자 belongsTo 조직
조직 hasMany 사용자
사용자 (UserCommission와) hasAndBelongsToMany의위원회 (UserCommission와)
위원회 hasAndBelongsToMany의 사용자
UserCommission belongsTo를 사용
UserCommission belongsTo를위원회
모델 테이블 :
사용자 (ID; organisation_id; 사용자 이름; ...)
위원회 (ID; commission_name, ...)
기구 (ID; ORGANISATION_NAME는, ...)
UserCommission (ID; USER_ID, commission_id, ...)
시도해보십시오. $ this-> User-> Organisation-> find ('all'); –
그것은 도움이되지 않습니다. UserCommission, User 및 Organization에 가입하려면 * JOINS * 옵션을 사용해야한다고 생각하지만 어떻게해야할지 모르겠다. – Patudek
모델 관계가 제대로 정의되어있는 한 일반적으로 JOIN을 사용할 필요가 없습니다. 귀하의 질문에 ** 사용자 ** 모델의 ** $ hasAndBelongsToMany **, ** $ hasMany ** 및 ** $ belongsTo ** 구성을 공유하십시오. – AgRizzo