Не сохранять данные в 2 таблицы есть foreigenkey oncakephp
На проекте CakePHP. У меня 2 модели
<?php class VisaPerson extends AppModel {
public $name = 'VisaPerson';
public $primaryKey = 'id';}?>
а также
<?php class VisaProcess extends AppModel {
public $name = 'VisaProcess';
public $primaryKey = 'id';
public $belongsTo = array(
'VisaPerson' => array (
'className' => 'VisaPerson',
'foreignKey' => 'people_id'
)
);
}
?>
В контроллере я написал:
if ($this->request->is('post')) {
if (!empty($this->request->data)) {
$person = $this->VisaPerson->save($this->request->data);
if (!empty($person)) {
$this->request->data['VisaProcess']['people_id'] = $this->$person->id;
$this->VisaPerson->VisaProcess->save($this->request->data);
}
}
Данные, сохраненные в VisaPerson, но в VisaProcess people_id не сохраняются автоматически. Пожалуйста, помогите мне!
1 ответ
Насколько я помню, вам нужно добавить это в вашу модель VisaPerson:
public $hasMany = array(
'VisaProcess' => array(
'className' => 'VisaProcess',
'foreignKey' => 'people_id'
)
);
После этого вам нужно только сохранить VisaPerson и обе таблицы будут заполнены (если $this->request->data['VisaProcess']
а также $this->request->data['VisaPerson']
существует):
$this->VisaPerson->save($this->request->data);