du7535 2015-02-04 16:31
浏览 20
已采纳

Laravel 3 Vs Laravel 4:过滤前

I have in UsersController.php

$this->beforeFilter('permission:administration');

and in my filers.php ( this is for larval 3 I want to change it to larval 4.2 equivalent)

 Route::filter('permission', function($permission)
 {
   if(!Auth::user()->permission($permission)) return App::abort(500);
 });

This code is from Laravel 3 and I am trying to make the same thing for Laravel 4.2 I am getting there folioing error :

Object of class Illuminate\Routing\Route could not be converted to string

How could I fix this , please help

  • 写回答

1条回答 默认 最新

  • dpfqy5976 2015-02-04 16:34
    关注

    This can be done in routes.php or controller.

    In the controller:

    $this->beforeFilter('permission:administration');
    

    in your routes.php file:

    Route::group(['before' => 'permission:administration'], function() {
       Route::get('my-route', 'UsersController@action');
    });
    

    or

    Route::get('my-route', ['before' => 'permission:administration', 'uses' => 'UsersController@action'])
    

    To retrieve the "administration" value:

    Route::filter('permission', function($route, $request, $permission)
     {
       if(!Auth::user()->permission($permission)) return App::abort(500);
     });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部