yii2에서 단일 저장 호출과 단일 트랜잭션으로 여러 관련 레코드를 db에 저장할 수 있습니까? 나는 두 개의 테이블이 있습니다Yii2 단일 트랜잭션에서 단일 저장 호출의 관련 레코드 저장
User - id, name
UserAddress - id , user_id , city
사용자 테이블이 UserAdress 테이블에 많은 관계로 하나가를
내가하고 싶은 것입니다 : 사용자와 useraddress을 저장해야합니다 사용자에 대한 save()를 호출하기
UserAddress ua = new UserAddress();
ua.city = "fff"
User u = new User();
u.name = "test";
u.userAddress = new Array(ua);
u.save();
user.id도 user.id로 설정합니다.
두 인서트 모두 단일 다국적이어야합니까? –
@GauravSingla 편집 됨. 지금 네. –
새로 만든 두 개의 활성 객체에 대한 예제에서 ['link()'] (http://www.yiiframework.com/doc-2.0/yii-db-baseactiverecord.html#link() -detail) 메소드를 사용하고 있습니다. 기록. 그러나 Yii2 문서의 "[저축 관계] (http://www.yiiframework.com/doc-2.0/guide-db-active-record.html#saving-relations)"기사에 정보가 있습니다. "_주의 : You 새로 생성 된 두 개의 활성 레코드 인스턴스를 연결할 수 없습니다. "라는 예는 새 하위 모델을 기존 마스터 모델에만 연결하는 것을 보여줍니다. 귀하의 솔루션이 작동하지 않거나 Yii2 문서에 버그가있는 것으로 보입니다. 당신은 당신의 대답을 테스트 했습니까? – trejder