0

背景

我正在编写一个应用程序,我需要在其中提取所有员工(表 1)并将它们添加到下拉列表中。然后将employee_id 保存在supervisors 表中(表2)。

是)我有的

我有两张桌子:

,------------,-----------,------------,--------------,
| Table_1_id | Name      | Surname    | Table_2_id   |
'------------'-----------'------------'--------------'

,------------,------------,
| Table_2_id | Table_1_id |
'------------'------------'

我试过什么

我尝试了以下方法:

$hrEmployees = $this->HrEmployee->find('list',
    array(
        'fields' => array("id","fullname"),
        'order' => array('HrEmployee.name ASC','HrEmployee.surname ASC')
    )
);
$this->set(compact('hrEmployees'));

这是在我的表 1 控制器中的编辑/添加功能下。

问题

我不知道该怎么做。我认为使用虚拟字段并将其传递给视图然后会用名称填充下拉列表,但显然我错了。如果我必须重新设计数据库结构,我会的,但我只需要它来工作!有人可以帮忙吗?

4

1 回答 1

1

您不需要 table2_Id 在您的员工表中。您可以从员工数组中获取员工数组并将其传递给模板。当用户从下拉列表中选择员工时,您需要运行另一个查询以将所选员工 ID 插入到主管表中。

于 2013-02-15T10:06:54.227 回答