У меня странная ситуация.Вот мой код:
public function getHomepage(Request $request){
$data['testimonials'] = $this->getTestimonials();
session()->put('location', 'north_america');
\debugbar()->info('UPDATED SESSION');
session()->save();
return view('site.index')->with('data', $data);
}
public function getGlobalPage(Request $request){
$data['testimonials'] = $this->getTestimonials();
if(session()->has('location')){
session()->forget('location');
}
session()->put('location', 'global');
session()->save();
return view('site.global')->with('data', $data);
}
public function getFeaturesPage(Request $request){
//\debugbar()->info($request);
//echo session()->get('location');
return view('site.features')->with('data', []);
}
Вот что происходит.Когда я перехожу на "домашнюю" страницу, переменная сеанса для "location" возвращается как "north_america".Это хорошо.
Если я перейду со «домашней» страницы на «глобальную», переменная сеанса для «местоположения» вернется как «глобальная».Это тоже хорошо.
Если я затем перейду со страницы "global" на страницу "features", переменная сеанса для "location" вернется как "north_america".Это не устанавливается в ноль или что-то, это, кажется, переписано.Как это может произойти?
Вот маршруты:
Route::get('/', ['as' => 'site.home', 'uses' => 'Site\SiteController@getHomepage']);
Route::get('features', ['as' => 'site.features', 'uses' => 'Site\SiteController@getFeaturesPage']);
Route::get('global', ['as' => 'site.global', 'uses' => 'Site\SiteController@getGlobalPage']);