나는 다음과 같은 모델링해야 PHP 클래스 구현하려는 : (심포니, DoctrineMongoDBBundle)Doctrine MongoDB에서 서브 문서에 주석을 달려면?
Notification Collection { from { id , fname } , to , sentDate }
Member Collection { id , fname , lname , email , phone , regDate , ... }
을 그리고 난 ODM에게 전하고 싶은 : "필드에서 단지 2 값을 유지하는 객체, 보낸 사람의 ID가 그의 성명은 "
내가 사용해야하는 주석은 무엇입니까? from.php와 같은 다른 클래스를 정의해야합니까? 아니면 내가 다음과 같은 두 개의 클래스를 만들 수 있습니다
/*
*@Document
*/
class Notification {
/*
*@Id
*/
protected $id;
/*
*@EmbedOne(targetDocument="Member")
*/
protected $from;
/*
*@ReferenceOne(targetDocument="Member")
*/
protected $to;
/*
*@Date
*/
protected $sentDate;
}
/*
*@Document
*/
class Member {
/*
*@Id
*/
protected $id;
/*
*@String
*/
protected $fname;
/*
*@String
*/
protected $lname;
/*
*@String
*/
protected $email;
.
.
.
}
그것을 내가 회원 객체에서만 ID와 FNAME를 개최 필드 "에서"제어 할 수있는 방법을 내 컨트롤러에 올바른 있다면? 이 있다고 가정 :
이$senderUser;
$newNotification = new Notification();
$newNotification->setFrom($senderUser);
는 그 다음 Member.But에 대한 모든 정보를 보유 회원 객체 세트에서 $ newNotification-> 내가 계속에만 ID와 보낸 사람의 FNAME을 원한다! (내 프로젝트가 필요하기 때문에) 영어 문법 오류를 용서하십시오. 어떤 도움 덕분에 ...
이 경우 참조를 사용해야합니다. –
Thanks @Pazi. From 필드에서 EmbedOne을 사용하면 어떻게됩니까? 그리고 Member 인스턴스를 만들 때 원하는 필드 만 지정합니다. –