Auth :: User () дает ноль в laravel 5.2 - PullRequest
0 голосов
/ 27 июня 2018

Я новичок в Laravel. Я использую мульти аутентификацию в моем приложении. Пользователь и администратор 2 типа пользователей в моем приложении. Я занимаюсь разработкой смены пароля для администратора после входа в приложение через страницу профиля администратора. Теперь я хочу войти в систему с правами администратора, чтобы я использовал приведенный ниже код в моем контроллере

if (Auth::guard('admin')->check()) {
        $user = Auth::id();
        echo '<pre>';
        dd($user);
        exit;
    }

Я также добавил следующий код в контроллер

use App\Http\Controllers\Adminauth;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Admin;
use Session;
use DB;
use App\Http\Controllers\Controller;
use Auth;

В route.php я написал следующий код

Route::group(['middleware' => ['admin']], function () {
//Login Routes...
Route::auth();
Route::get('admin/profile/change_password', 'Admin\AdminController@change_password');

}); * * 1 010

Но я не могу получить подробную информацию администратора. Может ли кто-нибудь помочь мне решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Auth::user() работает только под промежуточным программным обеспечением auth. Вы можете вызывать auth промежуточное ПО на контроллере или вызывать его на маршрутах, но не на обоих.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;

class YourController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth')
    }
    
    public function yourFunction(Request $request)
    {
        $user = \Auth::user();
        dd($user);
    }
}

<?php

Route::get('your-uri', function () {
    $user = \Auth::user();
    dd($user);
})->middleware('auth');
0 голосов
/ 27 июня 2018

Попробуйте это

public function __construct() {
$this->middleware('auth:admin');
$this->middleware(function ($request, $next) {
$user = $this->user = Auth::user();
dd($user);
});
}

На маршрутах

Route::get('/', function () {
    //return view('welcome');
     return view('auth.login');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...