Ich habe eine EntityWie wird die mit @PrePersist annotierte Methode ausgeführt, bevor eine Eigenschaft von @Timestampable gesetzt wird?
class Foo{
/**
* @var \DateTime
* @Gedmo\Timestampable(on="create")
* @ORM\Column(type="datetimetz")
*/
private $createdAt;
/**
* @ORM\PrePersist
*/
public function bar()
{
$this->createdAt->getTimestamp();
}
}
Leider ist die Foo :: bar() ausgeführt werden, bevor die TimestampableListener die Möglichkeit hat, den richtigen Wert von $this->createdAt
einzustellen.
Ich versuchte, die Priorität des Ereignis-Listeners in services.yml zu ändern (wie in Can I define the order in which event listeners/subscribers are called in doctrine? angedeutet), aber es funktioniert nicht.
@chalasr: Ich bin neu, aber warum würden Sie meinen Beitrag bearbeiten? Zeitstempel war ein korrekter Typ. – Zibi
Tut mir wirklich leid, ich glaubte, es sei ein Fehler! Es ist das erste Mal, dass ich diesen Typ sehe. – chalasr
@chalasr, es ist OK. :) – Zibi