내가 이런 모델에 대한 검색을 만들 조인 5 번 (가능한 경우). 문제는이 모델 중 하나가 X5로 되풀이되는 것입니다. 다른 사람들은있을 필요가 없습니다.CakePHP의 설정 재귀는
재귀 할 테이블과 재귀 할 수준을 찾기 기능에 알리는 방법이 있습니까? 그래서, 어느 모델이 재발 할 것인가와 각각에 대해 어느 정도의 수준으로 케이크를 말합니까?
내가 이런 모델에 대한 검색을 만들 조인 5 번 (가능한 경우). 문제는이 모델 중 하나가 X5로 되풀이되는 것입니다. 다른 사람들은있을 필요가 없습니다.CakePHP의 설정 재귀는
재귀 할 테이블과 재귀 할 수준을 찾기 기능에 알리는 방법이 있습니까? 그래서, 어느 모델이 재발 할 것인가와 각각에 대해 어느 정도의 수준으로 케이크를 말합니까?
음이 정확히 재귀가 아니라 깊은 관계를 액세스하고 주요 모델에 재귀 사용하지 않도록하는 유일한 방법은 함유 성 행동을 사용하는 것입니다
$options = array(
'conditions' => array(
'CompletedSurvey.' . $this->CompletedSurvey->primaryKey => $id
),
'contain' => array(
'SomeModel.SomeOtherModel.AnotherModel.AnotherModel'
)
);
$survey = $this->CompletedSurvey->find('first', $options);
을 그리고 설정하는 것을 잊지 마세요 CompletedSurvey 모델에 대한 수용 가능한 동작! (http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html#containablebehavior-options)를 함유 성 행동
class CompletedSurvey extends AppModel {
public $actsAs = array('Containable');
}
모델의 재귀 적 속성에 관한 CakePHP 요리 책은 생각대로 작동하지 않으므로 읽어보십시오. http://book.cakephp.org/2.0/en/models/model-attributes.html#recursive
찾고자하는 것은 반환 할 모델을 정확하게 지정할 수있는 포함 가능한 동작입니다. containable을 사용하는 방법에 대한 요리 책을 참조하십시오. http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html
에서 [** 재귀 옵션] 인 부울, 그리고 그것은 기본적으로 활성화되어 있습니다! – ndm
감사합니다. @ndm! 나는 나의 대답을 편집했다. – cleverketchup