晚上好。
请帮助我解决我的学说/mongo问题。
我有一个文档,该文档对另一个文档进行了参考,并引用了其他文档。
所以我需要运行一个查询,以获取我的第一个文档作为关联数组的完整文档树。
我试图这样做:
return $this->createQueryBuilder()
->field('category')->references($category)
->field('vendor')->prime()
->field('chars')->prime()
->hydrate(false)
->getQuery()
->execute();
,但结果我会得到这样的数组:
Array
(
[0] => Array
(
[_id] => MongoId Object
(
[$id] => 52e374c21c83735f098b4567
)
[category] => Array
(
[$ref] => Category
[$id] => MongoId Object
(
[$id] => 52dc56eb1c837345098b4567
)
[$db] => doctrine
)
[chars] => Array
(
[0] => Array
(
[$ref] => ProductChar
[$id] => MongoId Object
(
[$id] => 52e374c21c83735f098b4568
)
[$db] => doctrine
)
[1] => Array
(
[$ref] => ProductChar
[$id] => MongoId Object
(
[$id] => 52e374c21c83735f098b4569
)
[$db] => doctrine
)
)
[href] => href-test
[price] => 500
[title] => test
[vendor] => Array
(
[$ref] => Vendor
[$id] => MongoId Object
(
[$id] => 52e170571c837360098b4567
)
[$db] => doctrine
)
)
)
,但我不仅需要引用文档的ID,还需要所有值。
所以现在我不知道如何检索整个文档数组树。
预先感谢大家!
启动需要水合。如果您研究Query::execute()
,您会发现如果禁用水合,它会突然返回。如果启用了水合,则在该方法的稍后将发生底漆处理。我创建了#800,以确保我们记录此限制,因为在启动引用中没有讨论它。将来可能会实施对启动的支持,但我们没有任何目前的计划。