2011-10-12 2 views
1

관련 객체를 영속화하는 올바른 방법은 무엇입니까?doctrine 2 - 관련 객체로 작업하는 올바른 방법

class User{ 
    /** @OneToOne(targetEntity="Profile", cascade={"persist", "remove"}) */ 
    private $profile; 
} 

이 같은 프로파일 오브젝트의 속성을 변경하는 경우 $ 사용자 -> 프로파일 ->의 setText ('문자');

다음으로 $ em-> persist ($ user)가 발생하지 않습니다. 나는 또한 프로파일을 유지하려고 시도했다. 변경된 프로파일을 다시 사용자 오브젝트로 설정하고, 둘 다 유지했지만, 프로파일 레코드는 절대로 업데이트되지 않았다.

어떻게 처리하나요? 감사

답변

0

과 같이 수행

$user = new mjOfficeBase_modelos_Usuario; 
$user->setNombre('Mr.Pepito'); 
$em->persist($user); 
$em->flush(); 
+0

나는 이것을 의미하지 않는다. 이것은 나에게 분명하다. 나는 관련된 객체를 변경하고 변경 사항을 유지할 필요가있다. – bazo

+0

'$ em-> persist ($ user-> profile); $ em-> flush(); '? – azat

0
$user = // get the user 
$profile = $user->getProfile(); 
$profile->setText('text'); 
$em->persist($profile); 
$em->persist($user); 
$em->flush(); 

가 그 일을합니까?

관련 문제