尝试在两个表之间建立简单的多重关系。
不幸的是,Codeigniter一直在说:
“无法找到您指定的模型:eventtrigger”。
代码如下:
class Task extends DataMapper
{
public $has_one = array('employee',
'eventtrigger' => array('class' => 'employee'));
[…]
}
我知道,这是非常少的信息。
但我希望这个结构有一个已知的问题。
问候: maak
答案 0 :(得分:0)
您还需要定义关系的other_field
属性,还需要在Employee
模型中定义反向关系:
class Task extends DataMapper
{
public $has_one = array(
'owner' => array(
'class' => 'employee',
'other_field' => 'owned_task'
),
'trigger' => array(
'class' => 'employee',
'other_field' => 'triggered_task'
)
);
}
在员工模型中:
class Employee extends DataMapper {
$has_many = array(
'owned_task' => array(
'class' => 'task',
'other_field' => 'owner'
),
'triggered_task' => array(
'class' => 'post',
'other_field' => 'trigger'
)
);
}
有关详情:http://datamapper.wanwizard.eu/pages/advancedrelations.html
不幸的是,正如@bmorenate所提到的,DataMapper不再受到支持了。