2016-12-17 3 views
0

別のコレクションの1つのドキュメントを参照するドキュメントを作成する必要があります。私たちは参照されている文書のIDを知っています。Doctrine:参照されたドキュメントを見つけることなくreferenceOne関係を設定する方法は?

私たちの最初のアプローチは、次のとおりです。私たちは、最初の行(およびデータベースを押す)することなく、何とかそれを行うことができれば

$referencedDocument=$repository->find($referencedId); 
$newDocument->setUser($referencedDocument); 

は今の質問は です。 db(Mongoを使用)では、参照は単なる整数フィールドであり、そのtarget idを知っているので、$ referencedDocumentのfinding()は冗長なようです。

idを設定して新しいユーザーを作成しようとしましたが、永続化中にエラーが発生します。

ありがとうございます!私はこのような何かを使用プロジェクトの一つで

答えて

1

$categoryReference = $this->getEntityManager()->getReference(ProjectCategory::class, $category['id']); 

汝をあなたはモンゴを使用している場合、あなたはおそらく、だから、教義のドキュメントへのリンクをgetDocumentManager()

を使用する必要があります。 mongo odm 1.0

+0

魅力的な作品です。 $ billing-> setUser($ this-> dm-> getReference(User :: class、$ id)); dmはDocumentManagerです。ありがとう。 – user1312695

関連する問題