我遇到与Codeigniter DataMapper的关系时出现此问题。
我的Interview
模型有author_id
和interviewee_id
。它们都与用户模型中的用户ID相关。
我一直在尝试几种方法而且没有工作;这就是我现在所拥有的:
class Interview extends DataMapper
{
var $has_one = array(
'interviewee' => array(
'class' => 'user',
'other_field' => 'done_interview'),
'author' => array(
'class' => 'user',
'other_field' => 'written_interview')
);
}
class User extends DataMapper
{
var $has_many = array(
'done_interview' => array(
'class' => 'interview',
'other_field' => 'interviewee'),
'written_interview' => array(
'class' => 'interview',
'other_field' => 'author')
);
}
如何让DataMapper知道一个关系会通过author_id
,另一个通过interviewee_id
?
答案 0 :(得分:0)
引用Nelo在评论中回答他的问题:
似乎必须有一个user_id field
然后对于其他关系我可以命名我想要的字段。因此,将interviewee_id
更改为user_id seems
即可进行演练。以防万一有人遇到同样的问题