2017-05-12 3 views
3

Ich bekomme diesen Fehler, aber ich bin mir nicht sicher ist es wegen der Beziehung oder etwas anderes?ErrorException in HasRelationships.php

Fehler

ErrorException in HasRelationships.php line 487: 
Class 'Company' not found 

User.php

public function company(){ $this->belongsTo('Company', 'user_id'); }

Company.php

public function user(){ $this->belongsTo('User') ; }

Jetzt ist mein Ziel "Create Eintrag" Taste in Navigationsleiste auszublenden , wenn der Benutzer dies nicht tut haben eine Beziehung mit Unternehmen Tabelle. Ich weiß, dass ich es mit Rollen oder Middleware schaffen kann, aber mein Freund hat mir so etwas geschickt und mir gesagt, dass es einfacher ist, so zu machen.

Also jetzt versuche ich herauszufinden, wie, aber immer noch nicht herausfinden, wie Sie den Fehler beheben.

Navigationsansicht

@inject('user', 'App\User') 
    @if(count($user->company) > 0) 
    <li><a href="{{route('listings.create', [$area])}}">Add listing</a></li> 
    @endif 

/// UPDATE

Es hat nicht Klasse finden ‚Unternehmen‘, weil ich nicht die volle Namensräume in meinen Beziehungen mit war, aber jetzt bin ich immer diese neuer Fehler

Fehler

ErrorException in HasAttributes.php line 403: 
Relationship method must return an object of type Illuminate\Database\Eloquent\Relations\Relation 

(View: /Users/username/Desktop/laravel/resources/views/layouts/partials/_navigation.blade.php) 
(View: /Users/username/Desktop/laravel/resources/views/layouts/partials/_navigation.blade.php) 
(View: /Users/username/Desktop/laravel/resources/views/layouts/partials/_navigation.blade.php) 

Antwort

2

Verwenden vollständige Namespace in der Beziehung Code:

public function company() 
{ 
    return $this->belongsTo('App\Company', 'user_id'); 
} 
+0

Okay, etwas verändert, aber jetzt habe ich diese 'Beziehung Methode bin immer muss ein Objekt vom Typ Illuminate \ Database zurückzukehren \ Eloquent \ Relations \ Relation' – fl0bey

+0

@ Ohgodwhy danke, hinzugefügt, um die Antwort. –

+1

Danke, volle Namespaces lösten das Problem und ich aktualisierte das Thema. – fl0bey

Verwandte Themen