我有两个模型与hasMany链接到很多关系,并且有我的表结构
clients = id|title...etc
roles = id|title...etc
client_role = id|client_id|role_id|desc
每一件事都很棒
现在我想访问client_role表上的desc字段我该怎么做?
我试过了
$client = Client::first()->roles()->desc
//nothing returned!
$client = Client::first()->desc
但没有!请帮忙
答案 0 :(得分:2)
您必须在模型关系中加载数据透视图的列(例如,客户端):
return $this->belongsToMany('App\Role')->withPivot('desc');
然后你可以像这样调用数据库中的列:
foreach ($clients as $client) {
echo $client->pivot->desc;
}
我希望它可以帮助你...
答案 1 :(得分:0)
在Clients
模型中:
public function roles() {
return $this->belongsToMany('App\Clients');
}
在Roles
模型中:
public function clients() {
return $this->belongsToMany('App\Roles');
}
然后从您的控制器:
$client = Client::with('roles')->first();
dd($client->roles); // Laravel Collection