Symfony2 ondelete set Null

Я новичок в symfony2, и я начал проект блога. Этот проект имеет две сущности, один из постов (Noticia) и один с комментариями (Comentario).
Мне нужно удалить сообщение, но я не могу из-за связи с комментариями.

Вот мой атрибут:

/**
* @ORM\ManyToOne(targetEntity="Noticia", inversedBy="comentarios", onDelete="SET NULL")
* @ORM\JoinColumn(name="noticia_id", referencedColumnName="id")
*/
private $noticia;

/**
* @ORM\OneToMany(targetEntity="Comentario", mappedBy="noticia")
*/
private $comentarios = array();

Я пытался поставить onDelete="SET NULL" но когда я обновил свою базу данных доктриной: php app/console doctrine:schema:update --force Я получил эту ошибку:

The annotation @ORM\ManyToOne declared on property Noticia
Bundle\Entity\Comentario\::$noticia does not have a property named "onDelete".
Avaible properties: targetEntity, cascade, fetch, inversedBy

1

Решение

Я считаю, что onDelete = «SET NULL» должен быть частью JoinColumn аннотация, а не ManyToOne аннотаций.

6

Другие решения

Одним из способов будет поиск всех комментариев, связанных со статьей, которые вы хотите удалить.
Поэтому сначала удалите все комментарии, чем саму статью.
Это самый простой способ без изменения аннотации.

0

По вопросам рекламы [email protected]