У меня есть таблица с именем custom_carts
, и у меня есть таблица с именем custom_cart_items
.
custom_cart_items
имеет внешний ключ с именем custom_cart_id
, для которого установлено значение custom_cart.id
В соответствии с Cake Manual , когда вы вызываете Model-> delete (), первый параметр - это идентификатор записи, которую вы хотите удалить, а второй - каскадное удаление зависимых записей или нет.
Поэтому, когда я звоню $this->CustomCart->delete(7,true)
, я получаю эту ошибку:
Ошибка SQL: 1451: Невозможно удалить или обновить родительскую строку: сбой ограничения внешнего ключа (krake
.custom_cart_items
, CONSTRAINT custom_cart_items_ibfk_1
ИНОСТРАННЫЙ КЛЮЧ (custom_cart_id
) ССЫЛКИ custom_carts
(id
))
Вот запрос:
DELETE `CustomCart`
FROM `custom_carts` AS `CustomCart`
LEFT JOIN `users` AS `User`
ON (`CustomCart`.`user_id` = `User`.`id`)
WHERE `CustomCart`.`id` = 25
Shouldn ' * Каскад и удалить другую запись?
Так почему я получаю сообщение об ошибке?