如何在laravel的路线中使用变量?

时间:2017-01-04 14:24:16

标签: php laravel laravel-5.3 laravel-routing

我正在尝试在public function register(Request $request) { $data = request->only('xyz','abc'); // Do some coding . . $member['xyz'] = $data['xyz']; $member['abc'] = $data['abc']; return redirect('member/memberinfo')->with('member' => $member); } 中构建一个应用程序,在该应用程序中,我从request方法获取变量,然后尝试将该变量传递给路由。我想在我的视图中使用此变量,以便我能够显示变量的值。我现在正在这样做:

在我的控制器中,我收到了这样的请求:

Route::get('/member/memberinfo', 'MemberController@memberinfo')->with('member', $member);

现在我跟随我的路线:

MemberController

现在在$member我想使用public function memberinfo() { return view('member.memberinfo', ['member' => $member]); } 变量并将其显示在我的视图中:

text <- "#2013#3090050010#CCOU#01#022#1#N#16/03/2015 
#2013#3090050010#CCOU#01#023#1##16/03/2015 
#2013#3090050010#CCOU#02#005#1#1692528#16/03/2015 
#2013#3090430110#CCOU#15#504#2#blablablablablablablablablablablablablab 
labla#01/10/2014

#2013#3090430110#CCOU#15#505#2##01/10/2014"

但我在路线文件中收到错误

  

调用未定义的方法Illuminate \ Routing \ Route :: with()

帮帮我,我怎样才能做到这一点。

4 个答案:

答案 0 :(得分:1)

当您使用redirect()->with()时,您需要将数据保存到会话中。因此,要从控制器或甚至视图中的会话中获取数据,您可以使用session()帮助程序:

$member = session('member'); // In controller.

{{ session('member')['xyz'] }} // In view.

或者,您可以将变量作为字符串参数传递。

重定向:

return redirect('member/memberinfo/xyz/abc')

路线:

Route::get('/member/memberinfo/{xyz}/{abc}', 'MemberController@memberinfo');

控制器:

public function memberinfo($xyz, $abc)
{
    return view('member.memberinfo', compact('xyz', 'abc'));
}

答案 1 :(得分:0)

您可以这样使用:

路线:

Route::get('/member/memberinfo', 'MemberController@memberinfo')

和重定向:

return redirect('member/memberinfo')->with('member', $member);

答案 2 :(得分:0)

您需要将=>替换为,

public function register(Request $request)
{
    $data = request->only('xyz','abc');
    // Do some coding
    .
    .
    $member['xyz'] = $data['xyz'];
    $member['abc'] = $data['abc'];
    return redirect('member/memberinfo')->with('member', $member); // => needs to be replaced with ,
}

希望这有效!

答案 3 :(得分:0)

替换行

return redirect('member/memberinfo')->with('member' => $member);

return redirect('member/memberinfo')->with('member', $member);

...