1. <i id='SYQw4'><tr id='SYQw4'><dt id='SYQw4'><q id='SYQw4'><span id='SYQw4'><b id='SYQw4'><form id='SYQw4'><ins id='SYQw4'></ins><ul id='SYQw4'></ul><sub id='SYQw4'></sub></form><legend id='SYQw4'></legend><bdo id='SYQw4'><pre id='SYQw4'><center id='SYQw4'></center></pre></bdo></b><th id='SYQw4'></th></span></q></dt></tr></i><div id='SYQw4'><tfoot id='SYQw4'></tfoot><dl id='SYQw4'><fieldset id='SYQw4'></fieldset></dl></div>

      <small id='SYQw4'></small><noframes id='SYQw4'>

        <legend id='SYQw4'><style id='SYQw4'><dir id='SYQw4'><q id='SYQw4'></q></dir></style></legend>

      1. <tfoot id='SYQw4'></tfoot>
        • <bdo id='SYQw4'></bdo><ul id='SYQw4'></ul>

        Doctrine MongoDB 按 id 查找

        时间:2023-08-18
      2. <legend id='Q0d3e'><style id='Q0d3e'><dir id='Q0d3e'><q id='Q0d3e'></q></dir></style></legend>

            <tfoot id='Q0d3e'></tfoot>
              • <bdo id='Q0d3e'></bdo><ul id='Q0d3e'></ul>
                    <tbody id='Q0d3e'></tbody>
                  <i id='Q0d3e'><tr id='Q0d3e'><dt id='Q0d3e'><q id='Q0d3e'><span id='Q0d3e'><b id='Q0d3e'><form id='Q0d3e'><ins id='Q0d3e'></ins><ul id='Q0d3e'></ul><sub id='Q0d3e'></sub></form><legend id='Q0d3e'></legend><bdo id='Q0d3e'><pre id='Q0d3e'><center id='Q0d3e'></center></pre></bdo></b><th id='Q0d3e'></th></span></q></dt></tr></i><div id='Q0d3e'><tfoot id='Q0d3e'></tfoot><dl id='Q0d3e'><fieldset id='Q0d3e'></fieldset></dl></div>

                  <small id='Q0d3e'></small><noframes id='Q0d3e'>

                  本文介绍了Doctrine MongoDB 按 id 查找的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在使用 odm mongo 学说,我必须记录类

                  I'm using odm mongo doctrine and I have to document-classes

                  class Thing
                  {
                  /**
                   * @MongoDBId
                   */
                  protected $id;
                  
                   /**
                    * @MongoDBReferenceOne(targetDocument="Bundle1:Other")
                    */
                  protected $other;
                  }
                  

                  class Other
                  {
                  /**
                   * @MongoDBId
                   */
                  protected $id;
                  }
                  

                  所以在数据库中的东西看起来像:

                  so in the database a thing looks like :

                  {
                    "_id":ObjectId("43z758634875adf"),
                    "other":ObjectId("38z287348d8se")
                  }
                  

                  我现在如何查询 other 是给定 id 的东西?

                  How can I now query for things where other is a given id ?

                      $dm=$this->mongo->getManager();
                              $answers=$dm
                                  ->createQueryBuilder('Bundle1:Thing')
                                  ->field('other')->equals("ObjectId(516c0061975a299edc44b419)")  // <-- ?
                                  ->getQuery()
                                  ->execute()->count();       
                  

                  这会产生错误的 mongo 查询

                  This produces a wrong mongo query

                  MongoDB 查询:{"find":true,"query":{"other":"ObjectId(516c0061975a299edc44b419)"},"fields":[],"db":"maself","collection":"thing"}[] []

                  MongoDB query: {"find":true,"query":{"other":"ObjectId(516c0061975a299edc44b419)"},"fields":[],"db":"maself","collection":"thing"} [] []

                  当我使用

                  ->field('other')->equals("516c0061975a299edc44b419")

                  ->field('other')->equals("516c0061975a299edc44b419")

                  查询也是错误的

                  MongoDB 查询:{"find":true,"query":{"other":"516c0061975a299edc44b419"},"fields":[],"db":"maself","collection":"thing"}[] []

                  MongoDB query: {"find":true,"query":{"other":"516c0061975a299edc44b419"},"fields":[],"db":"maself","collection":"thing"} [] []

                  那么我如何搜索其他 id 等于 objectId 的东西?

                  So how can I search for thing where other id equals an objectId ?

                  推荐答案

                  尝试

                  ->field('other')->equals(new MongoId("516c0061975a299edc44b419"))
                  

                  ObjectId 是 Mongo 的内部类型,PHP 中用 MongoId() 表示

                  ObjectId is the internal type for Mongo, represented by MongoId() in PHP

                  (但我也在第一个主题中回答了)

                  ( But i have also answered in the first topic )

                  这篇关于Doctrine MongoDB 按 id 查找的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:如何在 Symfony2 项目中配置扩展 PersistentObject 的 Doctrine2 实体? 下一篇:MySql Doctrine:查找给定变量是否为 IN 数组属性

                  相关文章

                      • <bdo id='ZYzgj'></bdo><ul id='ZYzgj'></ul>
                      <i id='ZYzgj'><tr id='ZYzgj'><dt id='ZYzgj'><q id='ZYzgj'><span id='ZYzgj'><b id='ZYzgj'><form id='ZYzgj'><ins id='ZYzgj'></ins><ul id='ZYzgj'></ul><sub id='ZYzgj'></sub></form><legend id='ZYzgj'></legend><bdo id='ZYzgj'><pre id='ZYzgj'><center id='ZYzgj'></center></pre></bdo></b><th id='ZYzgj'></th></span></q></dt></tr></i><div id='ZYzgj'><tfoot id='ZYzgj'></tfoot><dl id='ZYzgj'><fieldset id='ZYzgj'></fieldset></dl></div>
                      <tfoot id='ZYzgj'></tfoot>

                      <small id='ZYzgj'></small><noframes id='ZYzgj'>

                    1. <legend id='ZYzgj'><style id='ZYzgj'><dir id='ZYzgj'><q id='ZYzgj'></q></dir></style></legend>