دسترسی به session در مدل ها و یا متدهای سازنده

دسترسی به session در مدل ها و یا متدهای سازنده

قصد داشتم در eloquent model به مقدار session دسترسی داشته باشم و مقادیری را از آن بخوانم ولی در دسترس نبود.

دو روش که به آنها رسیدم تا بتوانم از session استفاده کنم به صورت زیر بودند.

روش اول در صورتی قابل استفاده است که در سازنده کنترلر باشیم:


$this
->middleware(function ($request, $next) { $mySession=$request->session()->get("mySession"); var_dump($mySession); return $next($request); });

روش دوم در کلیه حالت ها قابل استفاده است و جهت استفاده از آن بایستی داخل Kernel.php مقادیر زیر را اضافه کنیم:

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class,
];