如何使用我自己的数据作为Doctrine MongoDB映射文档的ID,而不是自动生成的对象ID


关于

对象ID的MongoDB文档建议在某些情况下使用自定义键:

如果您的文档具有不可变的自然主键,我们建议您在 _id 中使用该主键,而不是自动生成的 ID。

如何定义一个完全可以做到这一点的简单模型对象?

<?php
namespace AcmeHelloWorldModel;
use DoctrineODMMongoDBMappingAnnotations as MongoDB;
/**
 * @MongoDBDocument
 */
class KindWord {
  /**
   * @MongoDBId(strategy="NONE")
   * @var string
   */
  private $word;
  public function getWord() {
    return $this->word;
  }
  public function setWord($word) {
    $this->word = $word;
  }
}

只需确保在呼叫persist()之前设置$word即可。

最新更新