我有一個問題涉及到Doctrine 2 MongoDB ODM在PHP中。學說2 MongoDb ODM參考
所以我有一個EntityA和內EntityA我想通過引用EntityB EntityB的的ObjectId。所以在EntityA我有一個變量A與以下Docblock:@ODM \ ReferenceOne(targetDocument =「EntityB」,簡單=「true」)。
問題是,當我致電使用setMethod它整個EntityB的套入EntityA,而不僅僅是OBJECTID這是我想做些什麼。
基本上EntityA看起來是這樣的:
ENTITYA {
randomFieldA,
randomFieldB,
EntityB ObjectId
}
有誰知道我要的是能夠像我怎麼都試過?或者有人知道更好的方法?
基本上是這樣的例子:
/** @Document */
class TopCategory
{
/** @EmbedMany(targetDocument="SubCategory") */
private $subCategories;
}
/** @EmbeddedDocument */
class SubCategory
{
/** @ReferenceOne(targetDocument="Product") */
private $product;
}
/** @Document */
class Product
{
/** @id */
private $id;
/** @String */
private $name;
}
現在我該怎樣只存儲在subCategory->product
的產品的ID,而不是整個產品?
所以就像我的產品示例。子類別 - >產品只包含產品的ID? – user1154863 2012-01-18 00:08:56
此外,您何時使用參考,何時使用嵌入? – user1154863 2012-01-18 00:09:21
@ user1154863不,「SubCategory」的'product'屬性將包含「Product」類型的對象。我已經用更多信息更新了我的答案 – Phil 2012-01-18 00:19:56