2016-08-03 72 views
0

Я пытаюсь создать новую роль originating_point_user в Laravel 5.2, помимо пользователя и администратора. Для этого я создал каталог с именем OriginatingPointAuth, в котором есть два файла: AuthController.php и PasswordController.php. Также модифицировали kernal.php, как показано ниже:Создание новой роли пользователя в Laravel 5.2

protected $routeMiddleware = [ 
     'auth' => \App\Http\Middleware\Authenticate::class, 
     'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 
     'can' => \Illuminate\Foundation\Http\Middleware\Authorize::class, 
     'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 
     'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 
     'admin' => \App\Http\Middleware\RedirectIfNotAdmin::class, 
     'origination_point_user' => \App\Http\Middleware\RedirectIfNotOriginationpointUser::class, 
    ]; 

И auth.php в

'providers' => [ 
     'users' => [ 
      'driver' => 'eloquent', 
      'model' => App\User::class, 
     ], 

     'admins' => [ 
      'driver' => 'eloquent', 
      'model' => App\Admin::class, 
     ], 
     'originating_point_users' => [ 
      'driver' => 'eloquent', 
      'model' => App\OriginatingPointUser::class, 
     ] 
     // 'users' => [ 
     //  'driver' => 'database', 
     //  'table' => 'users', 
     // ], 
    ], 

, но когда я попытался посетить маршрут с использованием originating_point_user Middleware, он показывает

ReflectionException в Container.php линии 734: Класс origination_point_user не существует

Маршрут:

Route::group(['prefix'=>'originating-point-user'], function() { 
    Route::group(['prefix'=>'loading-details'], function() { 
     Route::get('/add', [ 
      'as' => 'opu.loading_details.create', 
      'middleware' => ['originating_point_user'], 
      'uses' => '[email protected]_loading_details' 
     ]); 
    }); 
}); 

Кроме того, он не перенаправляет на упомянутой странице, определенной в AuthController.php

+0

У вас есть модель для «OriginatingPointUser»? – jaysingkar

+0

Да У меня есть модель 'OriginatingPointUser.php' – Nitish

ответ

1

В файле ядра вы зарегистрировали промежуточное программное обеспечение, как origination_point_user вместо originating_point_user. А когда при вызове промежуточного программного обеспечения вы вызываете originating_point_user.

protected $routeMiddleware = [ 
     'auth' => \App\Http\Middleware\Authenticate::class, 
     'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 
     'can' => \Illuminate\Foundation\Http\Middleware\Authorize::class, 
     'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 
     'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 
     'admin' => \App\Http\Middleware\RedirectIfNotAdmin::class, 
//change here originating_point_user 
      'originating_point_user' => \App\Http\Middleware\RedirectIfNotOriginationpointUser::class, 
    ]; 
+0

Спасибо большое. Сейчас работает. – Nitish

Смежные вопросы