У меня есть две сущности. Configuration
и Role
с однонаправленным отношением «многие ко многим» в Configuration
:
/**
* @var Role[]
*
* @ORM\ManyToMany(targetEntity="App\Entity\Role")
*/
private $roles;
Создание и обновление работает, как ожидается, но
$this->entityManager->remove($configuration);
$this->entityManager->flush();
не будет работать (нарушение внешнего ключа), потому что Doctrine не удалит набор данных отношений
Он работает только с удалением отношения вручную И дополнительным гриппом sh перед удалением сущности.
foreach ($issueTypeConfiguration->getRoles() as $role) {
$issueTypeConfiguration->removeRole($role);
}
// It only works with this additional flush
$this->entityManager->flush();
$this->entityManager->remove($issueTypeConfiguration);
$this->entityManager->flush();
Я ожидаю, что Doctrine удалит соответствующие наборы данных