我测试了Idiorm和Paris库,当我使用与自定义foreign_key的关联时,我发现了一个奇怪的行为 这是代码
类用户扩展了模型{
public static $_table = 'User';
public static $_id_column = 'UserId';
/*
* Associations
*/
public function department() {
return $this->has_one('Department','DepartmentId');
}
} 课程部门扩展了模型{
public static $_table = 'Department';
public static $_id_column = 'DepartmentID';
/*
* Association
*/
public function user() {
return $this->belongs_to('User','UserID');
}
}
自定义外键是必需的,因为数据库架构不可修改。
查询日志测试的结果:
$ department = Model :: factory('Department') - > find_one(23);
$ user = $ department-> user() - > find_many();
是:
SELECT * FROM User
WHERE UserId
=''限制1
为什么呢?
强文 抱歉, 我的错误是为了关系 我以错误的方式配置has_one和belongs_to 正确的代码反转关系