CakePHP 3 Pb将数据保存到BD中(CakePHP 3 Pb with saving data into BD)
我有一张表ComplexesEmployeesImmeubles:
id auto-increment complex_id foreign key of Complexes.ID employee_id foreign key of Employees.ID immeuble_id foreign key of Immeubles.ID poste_id foreign key of Postes.ID date_affectation created这是我的观点reaffecter.ctp
<?= $this->Form->create('ComplexesEmployeesImmeubles') ?> <?php echo $this->Form->select('complex_id', $complexes); echo $this->Form->input('employee_id',['type' => 'hidden' , 'value' => h($employee->id)]); echo $this->Form->select('immeuble_id', $immeubles); echo $this->Form->select('poste_id', $postes); echo $this->Form->input('salaire', ['label' => 'Salaire']); echo $this->Form->input('date_affectation', ['label' => 'Date d\'affectation']); ?> <?= $this->Form->button(__('Submit')) ?> <?= $this->Form->end() ?>在我的控制器中,我尝试使用下面的代码将数据保存到我的BD中,但没有保存!
if ($this->request->is('post')) { $complexesEmployeesImmeuble = $this->ComplexesEmployeesImmeubles->newEntity(); $complexesEmployeesImmeuble = $this->ComplexesEmployeesImmeubles->patchEntity($complexesEmployeesImmeuble, $this->request->data); $this->ComplexesEmployeesImmeubles->save($complexesEmployeesImmeuble);}I have a table ComplexesEmployeesImmeubles :
id auto-increment complex_id foreign key of Complexes.ID employee_id foreign key of Employees.ID immeuble_id foreign key of Immeubles.ID poste_id foreign key of Postes.ID date_affectation createdhere is my view reaffecter.ctp
<?= $this->Form->create('ComplexesEmployeesImmeubles') ?> <?php echo $this->Form->select('complex_id', $complexes); echo $this->Form->input('employee_id',['type' => 'hidden' , 'value' => h($employee->id)]); echo $this->Form->select('immeuble_id', $immeubles); echo $this->Form->select('poste_id', $postes); echo $this->Form->input('salaire', ['label' => 'Salaire']); echo $this->Form->input('date_affectation', ['label' => 'Date d\'affectation']); ?> <?= $this->Form->button(__('Submit')) ?> <?= $this->Form->end() ?>In my controller, I try to save data into my BD with the code below but nothing is saved !
if ($this->request->is('post')) { $complexesEmployeesImmeuble = $this->ComplexesEmployeesImmeubles->newEntity(); $complexesEmployeesImmeuble = $this->ComplexesEmployeesImmeubles->patchEntity($complexesEmployeesImmeuble, $this->request->data); $this->ComplexesEmployeesImmeubles->save($complexesEmployeesImmeuble);}最满意答案
使用debug($complexesEmployeesImmeuble->errors())检查验证是否失败。
if(!$this->ComplexesEmployeesImmeubles->save($complexesEmployeesImmeuble)){ debug($complexesEmployeesImmeuble->errors()); die; }如果您没有收到错误但仍未保存,请检查质量分配,更多信息http://book.cakephp.org/3.0/en/orm/entities.html#mass-assignment
Use debug($complexesEmployeesImmeuble->errors()) to check whether validation failed.
if(!$this->ComplexesEmployeesImmeubles->save($complexesEmployeesImmeuble)){ debug($complexesEmployeesImmeuble->errors()); die; }If you didn't get errors and still not saved then check for mass assignment , more info http://book.cakephp.org/3.0/en/orm/entities.html#mass-assignment
更多推荐
发布评论