自定义ID生成器
编辑本页自定义ID生成器
自定义ID生成器是允许实现自定义逻辑来为实体生成标识符的类。他们延长主义\ \ AbstractIdGenerator ORM \ Id
中实现自定义逻辑生成(EntityManager $em, $entity)
方法。在Doctrine bundle 2.3之前,创建自定义ID生成器时总是不带任何构造函数参数。
从Doctrine bundle 2.3开始CustomIdGenerator
属性标记的任何服务都可以被引用doctrine.id_generator
标签。如果您启用了自动配置(大多数时候这是默认的),那么如果您实现了自己的id生成器,Symfony将自动为您添加这个标记。ob娱乐下载
当使用Symfony的ob娱乐下载Doctrine桥和Uid组件5.3或更高版本时,提供了两个服务:doctrine.ulid_generator
来生成ulid,以及doctrine.uuid_generator
来生成uuid。
12 3 4 5 6 7 8 9 10 11 12 13 14 16 17 18 19 20
<?php/ / User.php使用学说\ORM\映射作为ORM;/ * * *@ORM实体\ * /类用户{/ * * *@ id*@ column(type = " uuid) *@ORM\ GeneratedValue(策略= "自定义")*@ORM\ CustomIdGenerator(“doctrine.uuid_generator”)* /私人$id;/ /……}
另请参阅https://www.doctrine-project.org/projects/doctrine-orm/en/2.8/reference/annotations-reference.html#annref_customidgenerator有关自定义ID生成器的更多信息。
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。