Данные в CakePHP 3.x не сохраняются при сохранении данных в 2 таблицы со многими связями
У меня есть две таблицы клиентов и филиалов. Имеет поле client_id. Отношение между ними. Мы имеем клиент. Имеет множество ветвей и филиалов, принадлежащих пользователю. У меня есть следующий код в моем файле клиентов / add.ctp.
<?php
echo $this->Form->create($client);
echo $this->Form->input('name');
echo $this->Form->input('branch.0.branch_name');
echo $this->Form->input('branch.0.email');
echo $this->Form->input('profile_link');
?>
and my controller code isas follow
<?php
public function add() {
$client = $this->Clients->newEntity();
if ($this->request->is('post')) {
$client = $this->Clients->patchEntity($client, $this->request->data, [
'associated' => ['Branches']
]);
if($this->Clients->save($client)) {
$this->Flash->success(__('data has been saved.'));
} else {
$this->Flash->error(__('The data could not be saved. Please, try again.'));
}
}
?>
но данные сохранены в таблице клиента, но не в таблице ветвей, пожалуйста, скажите мне, что должен делать id или что моя ошибка извинит за мой плохой английский
1 ответ
Решение
Если клиент hasHany
ветви вы должны сделать
echo $this->Form->input('branches.0.branch_name');
echo $this->Form->input('branches.0.email');
прочитайте руководство об этом