Laravel Redirect-> with(key,val)不起作用

时间:2016-09-16 12:20:01

标签: php laravel php-7

我想通过->with(key, val)函数将信息从一个函数发送到另一个函数,但它不起作用。我已经尝试了很多东西,但它没有用。

这是我的实际设置(我使用laravel 5.2)

routes.php文件

Route::group(['middleware' => ['web']], function() {
    Route::get("/test1", "InfoController@test1");
    Route::get("/test2", "InfoController@test2");
});

InfoController.php

class InfoController extends Controller
{
    public function test1(){
        return View::make("infos");
    }

    public function test2(){
        return Redirect::to("/test1")->with("hello", "world");
    }
}

Infos.blade.php

{{\Illuminate\Support\Facades\Session::get("hello")}}

坐空 - >没有输出。

问题出在哪里?

2 个答案:

答案 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() {

默认情况下,此中间件适用于整个应用程序。因此,再次调用它只会破坏闪存和会话数据。