【发布时间】:2014-05-20 10:09:21
【问题描述】:
这些是我的模型:
class Branch extends Eloquent {
protected $table = 'tb_branch';
public function faculty()
{
return $this->hasMany('Faculty');
}
}
class Faculty extends Eloquent {
protected $table = 'tb_faculty';
public function branch()
{
return $this->belongsTo('Branch');
}
}
在分支表中,我设置了一个外键 user_id 链接到用户表的列。
在教师表中,我设置了一个带有外键 branch 的列,该列链接到带有列 name 的分支表。
现在我需要根据当前登录的用户(使用 Eloquent)检索学院数据。
我想工作流程是:
- 获取当前登录用户的 id
- 将该 ID 链接到分支的
user_id并检索分支的name - 将该分支的
name链接到教师分支的name并检索所有匹配的教师数据
现在这是我尝试过的,但没有奏效:
$user_id = Sentry::getUser();
$faculty = Faculty::with('branch')->where('branch.user_id',$user->id)->get();
错误提示:
“where 子句”中的未知列“branch.user_id”(SQL:select * from
tb_faculty其中branch.user_id= 6)
如何使用 Eloquent 实现这一目标?
【问题讨论】:
标签: php join laravel-4 eloquent