Php 你能为ODM设置默认的ID策略吗?
在为文档的id字段设置Doctrine ODM注释时,可以指定不同的密钥生成策略,默认MongoId方法如下所示:Php 你能为ODM设置默认的ID策略吗?,php,mongodb,doctrine,odm,Php,Mongodb,Doctrine,Odm,在为文档的id字段设置Doctrine ODM注释时,可以指定不同的密钥生成策略,默认MongoId方法如下所示: /** @ODM\Document(collection="documents") */ class Document { /** * @ODM\Id(strategy="UUID") */ protected $id; } 这要求您为设置的每个新文档映射指定此策略。是否可以更改整个应用程序的默认策略?可能通过连接级别的配置选项?继承还不够吗 us
/** @ODM\Document(collection="documents") */
class Document
{
/**
* @ODM\Id(strategy="UUID")
*/
protected $id;
}
这要求您为设置的每个新文档映射指定此策略。是否可以更改整个应用程序的默认策略?可能通过连接级别的配置选项?继承还不够吗
use Doctrine\ODM\MongoDB\Mapping\Annotations as ODM;
/** @ODM\Document */
abstract class AbstractDocument
{
/**
* @ODM\Id(strategy="UUID")
*/
protected $id;
public function getId()
{
return $this->id;
}
}
/** @ODM\Document(collection="MyDocument") */
class MyDocument extends AbstractDocument {}
/** @ODM\Document(collection="AnotherDocument") */
class AnotherDocument extends AbstractDocument {}
然后你可以:
$myDocument = new MyDocument();
$odm->persist($myDocument);
$odm>flush();
$myDocument->getId();
你找到问题的答案了吗??