Bla*_*sad 5 symfony doctrine-orm
我正在尝试结合 Doctrine 的扩展 Blameable 和 Softdeleteable:当我执行时$em->remove($myEntity);,我想获取字段deleted并deletedBy相应更新。
use Gedmo\Mapping\Annotation as Gedmo;
/**
* @Gedmo\SoftDeleteable(fieldName="deleted", timeAware=false)
*/
[...]
/**
* DateTime of softdeletion
* @var \DateTime
*
* @ORM\Column(name="deleted", type="datetime", nullable=true)
* @Assert\DateTime()
*/
private $deleted;
/**
* Softdeleted by
* @var MyProject\UserBundle\Entity\User $deletedBy
*
* @Gedmo\Blameable(on="change", field="deleted")
* @ORM\ManyToOne(targetEntity="MyProject\UserBundle\Entity\User")
* @ORM\JoinColumn()
*/
private $deletedBy;
Run Code Online (Sandbox Code Playgroud)
Blameable(on="create")我对created/createdBy(使用)和updated/updatedBy(使用)有类似的配置Blameable(on="update")。
更奇怪的是,如果我用下面的代码替换上面的代码,该字段deletedBy就会正确更新:
/**
* Softdeleted by
* @var MyProject\UserBundle\Entity\User $deletedBy
*
* @Gedmo\Blameable(on="update")
* @ORM\ManyToOne(targetEntity="MyProject\UserBundle\Entity\User")
* @ORM\JoinColumn()
*/
private $deletedBy;
Run Code Online (Sandbox Code Playgroud)
所以看来这只是Blameable(on="change", field="deleted")不起作用的部分,我不知道为什么......
| 归档时间: |
|
| 查看次数: |
1548 次 |
| 最近记录: |