DB : user, profile에 테이블이 있어야합니다. 테이블 프로파일에는 user_id라는 필드가 있습니다.Symfony2 일대일 연결 양방향
class User {
....
/**
* @var \MyBundle\Entity\Profile
* @ORM\OneToOne(targetEntity="Profile", mappedBy="user")
*
*/
private $profile;
....
}
및 프로필 클래스 : 나는 ID로 프로필 얻을 후 잘 작동 ->getUser()
을 사용하려고하지만 ID로 사용자를 얻을 경우 다음이 작동하지 않습니다 ->getProfile()
원하는
class Profile {
....
/**
* @var \MyBundle\Entity\User
* @ORM\OneToOne(targetEntity="User", inversedBy="profile")
* @ORM\JoinColumn(name="user_id", referencedColumnName="id")
*
*/
private $user;
....
}
(null를 돌려 준다)
$user = $this->getDoctrine()
->getRepository('MyBundle:User')
->find(76322);
$user->getProfile(); // returns null :(
$profile = $this->getDoctrine()
->getRepository('MyBundle:Profile')
->find(12334);
$profile->getUser(); // return User object
제공된 ID에 관련 프로필이 있거나 존재하는지 확인 하시겠습니까? – Javad
네, 확실합니다 .. – latata
'getProfile' 함수에는 무엇이 있습니까? – Javad