2014-10-20 14 views
11

Ich habe zwei Modelle, User und Badge. Ein Benutzer kann mehrere Badges haben und ein Badge kann mehreren Benutzern gehören. (mit einer Pivot-Tabelle)Laravel gehörtToMany exclude Pivot-Tabelle

Derzeit bekomme ich die Daten, die ich brauche, aber zusätzlich bekomme ich die pivot Tabelle mit. Wie schließe ich das aus?

enter image description here

Hier ist das User Modell:

class User extends Eloquent { 

    public function badges() { 
     return $this->belongsToMany('Badge', 'users_badges'); 
    } 

} 

Und das Badge Modell:

class Badge extends Eloquent { 

    public function users() { 
     return $this->belongsToMany('User', 'users_badges'); 
    } 
} 

Antwort

22

hinzufügen pivot zu Ihrem $hidden Array Eigentum in Ihrem Modell (s).

class Badge extends Eloquent { 

    protected $hidden = ['pivot']; 

    public function users() { 
     return $this->belongsToMany('User', 'users_badges'); 
    } 
} 

Und gleiche mit Ihrem User Modell

class User extends Eloquent { 

    protected $hidden = ['pivot']; 

    public function badges() { 
     return $this->belongsToMany('Badge', 'users_badges'); 
    } 

} 
+0

könnte es pro Anfrage durchgeführt werden? – challet