Как удалить записи «многие ко многим» в Doctrine? - PullRequest
0 голосов
/ 08 апреля 2010

Я пытаюсь удалить записи во многих, используя Doctrine. Я использовал код на http://www.doctrine -project.org / документация / manual / 1_2 / ru / работа с моделями # отношения многие ко многим: удаление ссылки

когда я делаю первый метод, он просто удаляет запись UserGroup ТОЛЬКО. Как удалить записи пользователя, группы и группы пользователей одновременно? Второй и третий методы также не работают.

Ответы [ 3 ]

3 голосов
/ 09 апреля 2010

Вы можете использовать DQL для удаления этих записей, но ..

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

2 голосов
/ 08 апреля 2010

Добавьте в свой schema.yml что-то в этом настроении:

...
relations:
...
     onDelete: CASCADE

или в вашей базовой модели:

$this->hasMany('Group as Groups', array(
         ...
         'onDelete' => 'CASCADE'));
1 голос
/ 08 апреля 2010

Вы не можете, если таблицы не установлены каскадно при удалении.

...