8

私はやろうとしていますview::share('current_user', Auth::User());が、laravel 5ではこれを行う場所が見つかりません.L4ではbaseControllerでこれを行うことができますが、それはもう存在しません.

グレン

4

5 に答える 5

14

私はLaravel 5.0.28を使用していますが、この問題https://github.com/laravel/framework/issues/6130view::share('current_user', Auth::User())のため、もう機能しません

私が代わりに行うことは、最初に artisan を使用して新しいサービス プロバイダーを作成することです。

php artisan make:provider ComposerServiceProvider

次に ComposerServiceProvider をconfig/app.phpproviders 配列に追加します

//...
'providers' => [
    //...
    'App\Providers\ComposerServiceProvider',
]
//...

次に、作成したばかりのものを開きapp/Providers/ComposerServiceProvider.php、boot メソッド内に次を追加します

/**
 * Bootstrap the application services.
 *
 * @return void
 */
public function boot()
{
    View::composer('*', function($view)
    {
        $view->with('current_user', Auth::user());
    });
}

最後に、インポートViewAuthファサード

use Auth, View;

詳細については、http://laravel.com/docs/5.0/views#view-composersを参照してください。

于 2015-04-23T08:35:47.580 に答える
4

Laravel 5 では、laravel 4 と同じ方法を使用します。

View::share('current_user', Auth::User());

またはビュー ヘルパーを使用します。

view()->share('current_user', Auth::User());

http://laravel.com/docs/5.0/viewsを参照してください

于 2015-06-25T03:05:06.447 に答える