cakephp如何通过(连接模型)将数据保存到hasMany

时间:2012-08-26 02:58:44

标签: cakephp

我有三张桌子

Job Employee EmployeesJob --------- -------- ---------------------- id id id 名称job_id                            员工ID                            work_hours

关系是hasMany通过(加入模型[EmployeesJob]) 我想要做的是在添加新Job时,admin可以选择一个或多个员工,相关信息将存储在EmployeesJob和Job中。 在job / admin_add

echo $this->Form->input('EmployeesJob.employee_id',array('options'=>$employees, 'label'=>'Employee'));

它显示所有员工,但管理员只能选择其中一个,也不会在EmployeesJob中插入新行,我的作业表有其他关联表(HABTM,属于),所以我不确定saveAssociated( $ this-> request-> data)可以完成所有工作。

我需要帮助, 非常感谢

1 个答案:

答案 0 :(得分:0)

对于多名员工的选择,您应该写下以下内容:

echo $this->Form->input('EmployeesJob.employee_id][',array('options'=>$employees, 'label'=>'Employee', 'multiple' => 'multiple'));

要保存多条记录,您应该在控制器的代码中编写以下内容:

$this->Job->saveAssociated($this->request->data, array('deep' => true));

此链接也可能有助于您实现相同目标:CakePHP saving Foreign Key Issue