Ich zizaco/entrust Paket in meinem Laravel Projekt neben Multi Auth Paketnamen Hesto/multi-AuthÜberprüfung auf Rollen und Berechtigungen in zizaco/entrust Laravel Paket
Unser Projekt auf Laravel 5.4 verwenden,
i unten Fehlermeldung erhalten, wenn i Rolle Benutzer aktuellen angemeldeten erhalten möchten und Berechtigungen mit dieser Methode: Entrust::hasRole('role-name');
OR Auth::user()->hasRole('role-name');
Aber ich Dose Zugriff des Benutzers Rolle mit dieser Methode zum Beispiel:
$user = User::find($userid);
dd($user->hasRole('admin')); // Return true
i folgte genau Anweisung Installation aber ich bekomme unter Fehlern:
`Non-static method Zizaco\Entrust\Entrust::hasRole() should not be called statically`
Wie kann ich mein Problem zu lösen, Vielen Dank im Voraus
Überprüfen Sie die Anweisung 'use'. Benutzt du die Klasse oder die Fassade? Sie möchten die Fassade nutzen. –
Möglicherweise verwenden Sie die falsche Klasse. Haben Sie versucht, '\ Entrust :: hasRole();' zu verwenden. Noch nicht getestet, aber die Lösung ist, dass Sie EntrustFacade verwenden müssen, die hier erwähnt wird: https://github.com/Zizaco/entrust/blob/master/src/Entrust/EntrustFacade.php – PaladiN
@PaladiN es ist Arbeit für mich, und Ich hatte ein anderes Problem darin, aktuelle angemeldete Benutzer in 'vendor/zizaco/trust/src/Entrust/Entrust.php' in' user() 'Methode zu bekommen. weil ich mit 'Hesto/MultiAuth' konnte die vorherige Rückkehr den aktuellen Benutzer nicht wiederherstellen, Dann für die Behebung des Problems, änderte ich return' $ this-> app-> auth-> user(); 'zurück zu' Auth :: guard ('user') -> user(); 'aber ich denke, es gibt immer noch ein Problem mit Entrust Fecade –