1
내 계정 모델 : ID, 이름CakePHP의 두 모델 협회
내 항목 모델 : 아이디, account_id1, account_id2, 양
그래서 내 항목 계정 모델이 외래 키가 있습니다.
이와 같이 모델 연관을 정의했습니다.
$this->belongsTo(
'Acc1',
[
'className' => 'Accounts',
'foreignKey' => 'account_id1',
'joinType' => 'INNER',
]
);
$this->belongsTo(
'Acc2',
[
'className' => 'Accounts',
'foreignKey' => 'account_id2',
'joinType' => 'INNER',
]
);
이제 관련 계정의 이름이 "ab"로 시작하는 항목을 찾아야합니다. 내 항목에서
모델 파일 :
$this->find()
->matching(
'Acc1',
function ($q) {
return $q->where(['LEFT(Acc1.name, 2) =' => 'ab']);
}
);
이 나에게 (account_id1에 의해) 관련 계정 이름이 "AB"
$this->find()
->matching(
'Acc1',
function ($q) {
return $q->where(['LEFT(Acc1.name, 2) =' => 'ab']);
}
)
->matching(
'Acc2',
function ($q) {
return $q->where(['LEFT(Acc2.name, 2) =' => 'ab']);
}
);
이 곳 의 결과로 시작하는 모든 항목을 줄 것이다 계정 이름은 "ab"로 시작합니다.
Acc1.name 또는 Acc2.name이 "ab"로 시작하는 항목을 어떻게 얻을 수 있습니까?