2016-04-14 9 views
1

Ich habe zwei Modelle mit hasMany zu viele Beziehung verbunden, und es sind meine Tabellen StrukturLaravel 5: Zugang zu einem Feld in der hasMany-Tabelle?

clients = id|title...etc 
roles = id|title...etc 
client_role = id|client_id|role_id|desc 

every funktioniert super jetzt i auf der client_role Tabelle auf dem Feld ab zugreifen möchten, wie kann ich das tun? ich versuchte

$client = Client::first()->roles()->desc 
//nothing returned! 
$client = Client::first()->desc 

aber nichts! bitte helfen

+1

Post Modellcode –

Antwort

2

Sie haben die Spalten laden Ihres Pivots in der Modellbeziehung (z. B. Clients):

return $this->belongsToMany('App\Role')->withPivot('desc'); 

Dann können Sie die Spalte in der Pivot wie folgt aufrufen:

foreach ($clients as $client) { 
    echo $client->pivot->desc; 
} 

Ich hoffe, dass es Ihnen hilft ...

+1

dank dud i Ihr Kommentar angenommen haben als die Antwort . – Hamzar

+0

Ich bin froh, dass ich Ihnen helfen konnte! – Laerte

0

In Ihrem Clients Modell haben:

public function roles() { 
    return $this->belongsToMany('App\Clients'); 
} 

In Ihrem Roles Modell haben:

public function clients() { 
    return $this->belongsToMany('App\Roles'); 
} 

Dann aus dem Controller:

$client = Client::with('roles')->first(); 
dd($client->roles); // Laravel Collection