在Symfony中接收各种实体作为参数

jk9hmnmh  于 2022-12-27  发布在  其他
关注(0)|答案(1)|浏览(121)

我有一个从Symfony中的工作单元(实体管理器)获取实体更改集的方法,我希望它接收所有实体(Post、User...),而不是特定实体。

public function getChanges(Post $event): array
    {
        $uow = $this->entityManager->getUnitOfWork();
        $uow->computeChangeSets();

        return $uow->getEntityChangeSet($event);
    }

你有什么想法吗?一个解决方案是把对象作为参数,但我更喜欢在函数中只得到Symfony实体对象。

5vf7fwbs

5vf7fwbs1#

寻找教义实体倾听者。
https://symfony.com/doc/current/doctrine/events.html#doctrine-entity-listeners
并且不过滤其中的实体,从示例中删除此部分:

// if this listener only applies to certain entity types,
    // add some code to check the entity type as early as possible
    if (!$entity instanceof Product) {
        return;
    }

相关问题