php - 映射 - Symfony2 中的 Mongodb 嵌入式文档

标签 php mongodb symfony doctrine-orm doctrine

我正在尝试使用 MongoDB 在 Symfony2 中添加映射信息,如下所示:http://symfony.com/doc/current/bundles/DoctrineMongoDBBundle/index.html [在添加信息部分] 但我想做的是也添加一个嵌入式文档。 这是我的文档的一部分,其中包含嵌入式文档:

"_id" : "",
"last_name" :,
"first_name" : "",
"address" : [
{
    "Street" : "",
    "City" : "",
    "Zip_Code" : "",
    "Country": ""

}
],
"company" : ""
"purshaed_items" : [
{
    "items_id" : "",
    "category":"",
    "price":"",
    "date_of_purshae"

}
]

如您所见,我有嵌入文档的字段“Address”和“Purshaed_items”。 我找到了这个链接 http://doctrine-orm.readthedocs.org/projects/doctrine-mongodb-odm/en/latest/reference/embedded-mapping.html 我想我的案例将是“嵌入许多”,但并没有真正了解它是如何工作的?

谁能解释一下它是如何工作的?

谢谢

最佳答案

我会这样做:

/** @EmbedMany(targetDocument="PurshaedItem") */
    private $purshaedItems = array();

假设您有另一个名为 PurshaedItem(可能是 PurchasedItem)的文档类。

目标文档会像这样映射:

/**
 * @MongoDB\EmbeddedDocument
 */
class PurchasedItem
{
  // whatever properties ...
}

而如果你想查询嵌入式文档,你可以在controller中获取(推荐),这里是我的简单example .

为了在 Twig 模板中获取它,这里是另一个 example .

示例来自简单的 Symfony 博客应用程序。有 3 个文档:Post、Tag 和 Comment。帖子具有标签和评论作为嵌入属性。看一下代码,很简单。 如果回答对您有用,请点击采纳。

关于php - 映射 - Symfony2 中的 Mongodb 嵌入式文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33822297/

相关文章:

phpmyadmin 页面显示源代码,Ubuntu 16.04 安装了 Vagrant 和 Puphpet

php - 网址未显示错误/PHP

java - 如何在Java mongodb驱动程序中使用 “_id”字段查询文档而不使用集合名称?

mongodb - 具有多个标识符和混合条件(AND/OR)的 arrayFilters

mongodb - 将变量传递到node.js mongoose find 查询

php - 隐式连接和原则中的位置 - 如何?

symfony - 检测到服务 "security.context"的循环引用

php - Mysql插入问题

php - 在搜索框中输入内容时自动显示用户名?

javascript - Symfony|Twig : update data after ajax call