2014-11-21 2 views
0

Я хочу создать фильтр маршрутов в Laravel 4 для моего приложения.Как сделать фильтр маршрута в Laravel 4?

Деталь:

  • Я хочу, чтобы этот маршрут фильтр для только
  • user-> типа = 'дистрибьютора'
  • distributor-> типа = 'OEM'

Я точно знаю, что {{ Auth::user()->distributor()->first()->type }} вернет OEM

Вот код в моем filters.php

Route::filter('distributor', function() 
{ 
     if (Auth::user()->distributor()->first()->type !== "OEM") 

     { 
      if (Request::ajax()) 
      { 
       return Response::make('Unauthorized', 404); 
      } 

     } 

     else return View::make('errors.404_auth'); 
}); 

я получил ошибку:

Error

ответ

1

Я видел, как вы пытались получить доступ к соотношению между пользователем и дистрибьютором, но вы не проверяете, действительно ли пользователь с этим конкретным типом существует.

Мое предложение будет

Добавить if (Auth::user()->type == " You user type in string "){ на верхней части первой, если заявление.

Подробнее см. Код. Надеюсь, эта помощь!

Route::filter('oem', function() 
{ 

    if (Auth::user()->type == " You user type in string "){ 

     if (Auth::user()->distributor()->first()->type == "OEM") 
     { 
      if (Request::ajax()) 
      { 
       return Response::make('Unauthorized', 404); 
      } 

     } 

     else return View::make('errors.404_auth'); 

    } 
}); 
Смежные вопросы