Run a command in Laravel on every page load -
i want load command laravel on each page load;
$mail_count = mail::where('to_id', '=', auth::user()->id)->where('read', '=', '0')->count('read'); what best way this? needs output result in master template page.
use view composer master template, example:
// app/providers/composerserviceprovider.php public function boot() { view()->composer( 'layouts.master', 'app\http\viewcomposers\mastercomposer' ); } then create composer class:
namespace app\http\viewcomposers; use auth; use app\mail; use illuminate\view\view; class mastercomposer { public function compose(view $view) { $mail_count = mail::where('to_id', auth::user()->id) ->where('read', 0) ->count('read'); $view->with('mail_count', $mail_count); } } finally, can use {{ $mail_count }} in master view print out result. so, in case, it's doing is, whenever views\layouts\master.blade.php rendered compose method called , $mail_count attached view. make sure use exact name view, i've used layouts.master (views/layouts/master.blade.php) example.
Comments
Post a Comment