Обратные вызовы абстрактного класса Symfony2.4 не запускаются

Я использую класс, который расширяет абстрактный класс, содержащий lifecyclecallbacks. Мой абстрактный класс аннотирован @ORM\MappedSuperclass, но мои обратные вызовы не запускаются. Я видел много проблем здесь и там на эту тему, но никаких конкретных ответов. У кого-нибудь есть решение, которое действительно работает? (Я указываю, что если я вызываю мои методы обратного вызова вручную, все работает отлично)

Ответ по этой ссылке не работает для меня:

Doctrine 2 LifecycleCallbacks с абстрактным базовым классом не вызывается

(но проблема та же)

<?php

// ...

/**
 * @ORM\MappedSuperclass
 * @ORM\HasLifecycleCallbacks
 */
abstract class Picture {

    // ...

    /**
     * @ORM\PrePersist()
     * @ORM\PreUpdate()
     */
    public function preUpload() {
        echo 'preUpload ';
        if (null !== $this->getFile()) {
            $this->picture = $this->getNewFilename(10);
        }
    }
}

/**
 * User
 *
 * @ORM\Table()
 * @ORM\Entity(repositoryClass="Myown\UserBundle\Entity\UserRepository")
 */
class User extends Picture  {
    // ...
}

1 ответ

Не могли бы вы добавить абстрактный класс и сущности, использующие этот сопоставленный суперкласс? По-прежнему звучит так, как будто не хватает некоторых характеристик.

Другие вопросы по тегам