-
Install via composer:
composer require adt/doctrine-loggable
-
Register this extension in your config.neon:
extensions: - Adt\DoctrineLoggable\DI\LoggableExtension
-
Do database migrations
-
Add annotation to entities you wish to log
<?php
use Doctrine\ORM\Mapping as ORM;
use Adt\DoctrineLoggable\Annotations as ADA;
/**
* @ORM\Entity
* @ADA\LoggableEntity
*/
class User
{
/**
* @ORM\Column(type="string", nullable=true)
* @ADA\LoggableProperty(label="entity.user.firstname")
*/
protected $firstname;
/**
* @ORM\ManyToMany(targetEntity="Role", inversedBy="users")
* @ADA\LoggableProperty(logEntity=false, label="entity.user.roles")
*/
protected $roles;
}
/**
* @ORM\Entity
* @ADA\LoggableIdentification(fields={"name"})
*/
class Role
{
/**
* @ORM\Column(type="string")
*/
protected $name;
/**
* @ORM\ManyToMany(targetEntity="User", mappedBy="roles")
*/
protected $users;
}