Saya sedang membangun API dengan Symfony 3.4 dan platform api. Saya ingin menggunakan penghapusan sementara pada entitas saya. Saya telah menginstal DoctrineExtensions
dan StofDoctrineExtensionsBundle
.
config.yml
:
doctrine:
dbal:
connections:
default:
[…]
orm:
entity_managers:
default:
naming_strategy: doctrine.orm.naming_strategy.underscore
connection: default
mappings:
[…]
filters:
softdeleteable:
class: Gedmo\SoftDeleteable\Filter\SoftDeleteableFilter
enabled: true
Dan entitas saya:
<?php
namespace AppBundle\Entity;
use ApiPlatform\Core\Annotation\ApiResource;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
/**
* MyEntity
*
* @ORM\Table(name="MyEntity", schema="MyEntity")
* @ORM\Entity(repositoryClass="AppBundle\Repository\MyEntityRepository")
* @Gedmo\SoftDeleteable(fieldName="deletedAt")
* @ApiResource
*/
class MyEntity
{
/**
* @var \DateTime
* @ORM\Column(name="deleted_at", type="datetime")
*/
private $deletedAt;
[…]
Ini tidak bekerja. Saya sadar bahwa saya perlu mengkonfigurasi sesuatu (yaitu EventManager), tapi saya tidak tahu caranya. Inilah kesalahan yang saya dapatkan saat mencoba membuat entitas
Listener "SoftDeleteableListener" was not added to the EventManager!
Saya rasa saya telah melakukan semua yang dijelaskan halaman tersebut: Dokumentasi StofDoctrineExtensionsBundle
Bantuan apa pun akan sangat dihargai.