Я пытаюсь сохранить заказ, а товары в заказе.
Заказ сохраняется, а продукты - нет.
У меня есть таблица orders
, таблица products
и таблица orders_products
.
В модели заказа я установил $hasAndBelongsToMany = 'Product';
в таблице orders_products
У меня есть пара дополнительных полей: order_id
, product_id
плюс price
, quantity
, чтобы зафиксировать цену продажи и проданное количество.
Я сохраняю данные с помощью:
$ this-> ПОРЯДКА> SaveAll ($ данных);
Вот что такое $ data:
Array
(
[Order] => Array
(
[user_email] => st@kr.com
[billing_first] => Steve
... //more excluded
[total] => 5000
)
[Product] => Array
(
[0] => Array
(
[id] => 1
[price] => 5000.00
[quantity] => 1
)
)
)
Заказ сохраняется в таблице заказов, но ничего не сохраняется в таблице orders_products. Ожидается, что таблица orders_products сэкономит [new_order_id], 1, 5000.00, 1
Я получил это уведомление:
Notice (8): Undefined index: id [CORE/cake/libs/model/model.php, line 1391]
Model::__saveMulti() - CORE/cake/libs/model/model.php, line 1391
Model::save() - CORE/cake/libs/model/model.php, line 1355
Model::__save() - CORE/cake/libs/model/model.php, line 1778
Model::saveAll() - CORE/cake/libs/model/model.php, line 1673
CartsController::saveOrder() - APP/controllers/carts_controller.php, line 128
CartsController::checkout() - APP/controllers/carts_controller.php, line 172
Dispatcher::_invoke() - CORE/cake/dispatcher.php, line 204
Dispatcher::dispatch() - CORE/cake/dispatcher.php, line 171
[main] - APP/webroot/index.php, line 83
Есть идеи?