tseho / doctrine-assigned-identity
v0.1.0
2018-07-04 15:14 UTC
Requires
- php: >=7.1
- doctrine/orm: ^2.6
This package is auto-updated.
Last update: 2024-08-29 04:31:41 UTC
README
描述
此包允许您手动为Doctrine实体分配ID,即使实体使用的是AUTO、SEQUENCE、IDENTITY或UUID策略。
此包的主要用例是为您的单元测试显式设置创建的实体的ID。不建议在生产环境中使用此包。
安装
composer require --dev tseho/doctrine-assigned-identity
使用方法
在Doctrine中注册事件监听器。
使用Symfony
# app/config/config_test.yml
services:
tseho.doctrine_assigned_identity.listener:
class: Tseho\DoctrineAssignedIdentity\EventListener\AssignedIdentityListener
public: false
tags:
- { name: doctrine.event_listener, event: prePersist }
它如何工作?
AssignedIdentityListener
如果存在新持久化的实例并手动分配了ID,将覆盖实体类的ID生成器。对于所有没有ID的同一类的其他实例,ChainedGenerator
将回退到正确的ID生成器。