Laravel 5.2 how to use config::set in middleware

自古美人都是妖i 提交于 2019-12-10 18:34:02

问题


I want to use config::set in my Middleware for the set the value globally. But it is generating error.

Below is the code which I am using

public function handle($request, Closure $next, $guard = 'admin') {

        if (!Auth::guard($guard)->check()) {
            return redirect('/admin/login');
        }

        //dd(Auth::guard('admin')->user()->id);
        $admin = $this->admin->with('adminRole')->find(Auth::guard('admin')->user()->id);
        config::set('bmc.admin_permission', $admin);    

        // check user roles
        if (array_key_exists('0', $admin->adminRole) && isset($admin->adminRole[0]->name)) {
            dd($admin->hasRole($admin->adminRole[0]->name));
        }
        return $next($request);
    }

Here is the error which I get

Class 'App\Http\Middleware\config' not found

回答1:


I never used Config set but since it is a Facade, you have to add use Config after your namespace declaration.




回答2:


Suppose you have a file config/bmc.php like:

return[
   'admin_permission' => 'initial value'
];

and you want to change dynamically admin_permission value. You can use laravel global function config() like:

$settings = [
   'bmc.admin_permission' => 'some value'
];
config($settings);

Enjoy coding :)



来源:https://stackoverflow.com/questions/38638237/laravel-5-2-how-to-use-configset-in-middleware

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!