saveAll 트랜잭션의 관련 모델에 데이터를 저장하려는 모델을 가져올 수 있습니까? 예를 들어, 사용자가 많은 목표를 가지고 있고 전화를 걸면;관련 모델에서 saveAll 호출을 시작하는 모델을 얻는 방법
$this->User->saveAll($data);
사전 정의 된 attritbute, 메소드 또는 메커니즘을 사용하여 목표 모델 클래스에서 모델 사용자를 얻을 수 있습니까?
미리 감사드립니다. Roland.
편집 : 그림 모델과 게시물 (블로그)이 해당 모델과 함께있는 가상 상황을 가정하십시오. 이 두 가지 모두에 대해 주석을 달 수 있습니다. 따라서 각 모델에 대해 별도의 주석 모델을 작성하는 대신 하나의 중앙 Comment 모델을 작성합니다. 연결은 다음과 같을 수 있습니다.
//In the Picture model
var $hasMany = array(
`` 'Comment' => array(
'className' => 'Comment',
'foreignKey' => 'picture_id',
'conditions' => array('Comment.objectType' => 'picture')
)`
);
포스트 모델에 대한 연관성은 비슷합니다.
'conditions' => array('Comment.objectType' => 'post')
이러한 모델을 사용하면 이러한 모델 중 하나를 쿼리하면 objectType 필드를 사용하여 해당 테이블의 주석을 DB 테이블에서 검색합니다.
내가 뭔가를 할 수 있다면;
$this->Picture->saveAll($data);
, 또는 잘 구조화는 $ 데이터 배열
$this->Post->saveAll($data);
과 댓글 부분을 포함하는이 절약 거래 도중의 어떤 시점에서, 저장 될 데이터는 코멘트를 테이블에 저장됩니다 Comment 모델을 통해. 내가 원하는 것은 그것이 Comment 모델의 beforeSave 메서드에 주석을 저장하려고 시도하는 Picture 모델이라는 것을 알 수 있다는 것입니다.
에서 GoalModel
에서 UserModel
에서
는 명확히하기 위해 - 당신은 그것을 확인하고 싶은 것이 저장하려고 사용자 데이터 이외의 데이터 - 해당 데이터/모델에 따라 무언가를 수행하거나 기능을 실행하십시오. Y/n? – Dave
질문을 명확히 할 수 있습니까? 당신이하려는 일의 예를 들어주십시오. 나는 그것이 귀하의 질문에 투표가 내려진 이유라고 생각합니다. 당신이 묻고있는 것이 명확하지 않습니다. –