2016-11-01 4 views
1

i auf einem CRM bin arbeiten, die mit mehreren SprachenLaravel 5.3 Join-Tabelle Auth Benutzerklasse

meine Benutzer-Tabelle sieht wie folgt funktionieren sollte:

Benutzer

id 
first_name 
last_name 
email 
password 
**language_id** 

Sprachen

id 
name 
short_name //en,fr,ru etc 

Ich versuche, die Sprache Kurzname des Benutzers zu erhalten, wenn der Benutzer sich anmeldet Ich habe es versucht:

Auth :: user() -> language() -> short_name; und auch das Auth :: user() -> language-> short_name;

und es funktioniert nicht, i fügen Sie diese dem User-Modell:

public function language() 
{ 
     return $this->belongsTo('App\Language'); 
} 

und dieser Teil an das Sprachmodell:

public function user() 
{ 
     return $this->hasMany('App\User'); 
} 

, was mache ich falsch?

Antwort

1

Versuchen first() Methode zu verwenden:

auth()->user()->language()->first()->short_name; 
+0

Glad es half.) –

+1

@IlanFinkel Wenn Sie diese Frage beantwortet haben, können Sie sie bitte als richtig markieren, damit andere Benutzer wissen, dass dies die richtige Antwort ist? :) –

+0

Ja sicher, du antwortest mir so schnell, dass stackoverflow es mir nicht erlaubte, es zu markieren :) –

Verwandte Themen