0

我有三张桌子

Job Employee EmployeesJob --------- -------- ---------- id id id name name job_id employee_id work_hours

关系是hasMany through (The Join Model[EmployeesJob]) 我想做的是当添加一个新Job时,管理员可以选择一个或多个员工,相关信息将存储在EmployeesJob和Job中。在工作/admin_add

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

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

我需要帮助,非常感谢

4

1 回答 1

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 保存外键问题

于 2012-08-27T04:11:06.423 回答