Kol*_*sar 3 relationship laravel eloquent
如何从Laravel中的关系中获取表格中的所有数据?
所以,我有这样的表:
*users*
id
username
password
...
*address*
id
address
user_id
...
Run Code Online (Sandbox Code Playgroud)
如果我用Address :: all()调用我的雄辩模型,我会得到user_id的响应,并且我想建立获取用户名的关系.
我尝试添加:
public function users(){
return $this->belongsTo('Users', 'user_id');
}
Run Code Online (Sandbox Code Playgroud)
并打电话给Address::with('users')->get(),但响应是空的.
被称为User类Users或User?除非你覆盖它,否则Eloquent处理名称的默认方式可以在docs(source)中找到:
请注意,我们没有告诉Eloquent哪个表用于我们的User模型.除非明确指定了其他名称,否则该类的小写复数名称将用作表名.因此,在这种情况下,Eloquent将假定User模型将记录存储在users表中.您可以通过在模型上定义表属性来指定自定义表
所以我相信如果你将地址模型中的代码更改为:
public function users(){
return $this->belongsTo('User', 'user_id');
}
Run Code Online (Sandbox Code Playgroud)
它的工作,因为我们已经改变Users到User