【发布时间】:2016-05-27 19:49:58
【问题描述】:
我知道show($id) 方法的路由名称是some_name/parameter。这里我有一个登录身份验证机制,如果用户通过了身份验证,我想显示用户配置文件。我有一个名为loginUser() 的函数里面我的userController。我想在成功登录时将用户重定向到 user.show 路由。但我不确定如何将参数值传递给 show 方法。目前我收到错误:
缺少 [Route: user.show] [URI: user/{user}] 的必需参数。
loginUser() 函数:
public function loginUser(Request $request){
$data = $request->all();
$rules = array(
'name' => 'required',
'password'=>'required'
);
// Create a new validator instance.
$validator = Validator::make($data, $rules);
if($validator->fails()){
$errors=$validator->messages();
return redirect()->back()->withErrors($validator);
}else{
if(Auth::attempt(['name'=>$request['name'],'password'=>$request['password']])){
return redirect()->route('user.show')->with('name',$request['name']); // pass control to show() function
}else{
return redirect()->back()->with('data', 'wrong username or password');
}
}
}
userController 中的 show() 方法:
public function show($user)
{
//
$info=userModel::where('id','=',$user)->get(array('name'));
return View::make('user.show')->with('name',$info);
}
【问题讨论】: