Doctrine2 - невозможно удалить объект с однонаправленным отношением oneToMany

получая нарушение внешнего ограничения при попытке удалить объект, содержащий однонаправленные связи «один ко многим». У меня есть следующий простой класс:

class Dealer{

/**
 * @ManyToMany(targetEntity="Car", cascade={"persist", "remove"})
 * @JoinTable(name="dealer_cars",
 *      joinColumns={@JoinColumn(name="dealer_id", referencedColumnName="id")},
 *      inverseJoinColumns={@JoinColumn(name="car_id", referencedColumnName="id",
        unique=true)}
 *    )
 **/
  protected cars;
}

Car В этом случае объект не должен содержать отношения к своему владельцу (отсюда и однонаправленные отношения). Если я попытаюсь удалитьDealer Объект, содержащий ассоциации с автомобилями, получает следующее ограничение ограничения:

Cannot delete or update a parent row: a foreign key constraint fails 
(`application`.`dealer_cars`, CONSTRAINT `FK_E1BCEEEBC3C6F69F`
 FOREIGN KEY (`car_id`) REFERENCES `car` (`id`))'

Я получил бы то же сообщение, если бы попытался удалить строку дилера вручную из таблицы базы данных, но я подумал, что Doctrine, используя cascade = "Удалить", позаботится об этом для меня.

Если я изменяю ассоциацию на двустороннюю ассоциацию, это работает. Почему это не работает с однонаправленными ассоциациями?

Ответы на вопрос(1)

Ваш ответ на вопрос