我想通过->with(key, val)
函数将信息从一个函数发送到另一个函数,但它不起作用。我已经尝试了很多东西,但它没有用。
这是我的实际设置(我使用laravel 5.2):
Route::group(['middleware' => ['web']], function() {
Route::get("/test1", "InfoController@test1");
Route::get("/test2", "InfoController@test2");
});
class InfoController extends Controller
{
public function test1(){
return View::make("infos");
}
public function test2(){
return Redirect::to("/test1")->with("hello", "world");
}
}
{{\Illuminate\Support\Facades\Session::get("hello")}}
坐空 - >没有输出。
问题出在哪里?
答案 0 :(得分:2)
with()
传递会话数据,而不是变量。因此,您需要使用会话get()
方法来获取数据:
{{ Session::get('hello') }}
此外,如果您使用的是5.2.27或更高版本,remove web
middleware to make sessions work。
答案 1 :(得分:1)
问题是使用web
中间件:
Route::group(['middleware' => ['web']], function() {
默认情况下,此中间件适用于整个应用程序。因此,再次调用它只会破坏闪存和会话数据。