如何在cakephp中建立一对一的递归关系?

时间:2010-08-28 06:29:01

标签: cakephp

我是CakePHP的新手,我正在试图弄清楚如何创建以下关系:

alt text

employees.manager_id将指向其经理的employees.id.所以,换句话说,员工杰森将拥有吉尔的经理。 Jason是employees.id 1 with employees.manager_id 2. Jill是employees.id 2和employees.manager_id null。

如何以索引,添加,编辑等方式设置模型控制器,以便从同一个表中查找manager_id。例如,在编制索引时,我希望看到'Jill'是jason的经理,而不是数字2 ...

1 个答案:

答案 0 :(得分:2)

您可以定义以下关联:

class Employee extrnds AppModel {
var $belongsTo = array(
            'Parent' => array('className' => 'Employee',
                                'foreignKey' => 'manager_id',
                                'conditions' => '',
                                'fields' => '',
                                'order' => ''
            )
    );
}

然后您可以通过以下方式访问它:

$this->Employee->Parent->find('list');