Laravel 5与所有视图共享数据

时间:2015-04-01 19:03:33

标签: laravel laravel-5

我有这个代码,想要分享项目的所有视图,我该怎么办?

        $id_user = Auth::user()->id;

        $data['modulos'] = Permissaousuario::Modulo($id_user);

        $id_modulo = DB::table('modulos')
        ->where('rota','like','%ensaio%')
        ->pluck('id');

        $data['areas'] = Permissaousuario::Area($id_user,$id_modulo);
        $data['permissoes'] = Permissaousuario::Permissao($id_user,$id_modulo);
        $data['usuario'] = Auth::user();

        return view('ensaio.home')->with($data);

提前致谢!

1 个答案:

答案 0 :(得分:3)

view()->share() AppServiceProvider方法中与boot分享:

public function boot()
{
    $id = Auth::id();

    $modulos = DB::table('modulos')->where('rota', 'like', '%ensaio%')->pluck('id');

    view()->share([
        'usuario'    => Auth::user(),
        'modulos'    => Permissaousuario::Modulo($id),
        'areas'      => Permissaousuario::Area($id, $modulos),
        'permissoes' => Permissaousuario::Permissao($id, $modulos),
    ]);
}

该文件位于此处:app/Providers/AppServiceProvider.php