Php Redirect:to()和Redirect::route()之间有什么区别?
我正在学习拉维4 我的路线文件的代码:Php Redirect:to()和Redirect::route()之间有什么区别?,php,redirect,laravel-4,Php,Redirect,Laravel 4,我正在学习拉维4 我的路线文件的代码: Route::post('user/admin', 'UserController@admin'); Route::get('user/login', 'UserController@login'); Route::resource('user', 'UserController'); Route::get('/', function() { return View::make('home'); }); 我的控制器的代码: public fun
Route::post('user/admin', 'UserController@admin');
Route::get('user/login', 'UserController@login');
Route::resource('user', 'UserController');
Route::get('/', function()
{
return View::make('home');
});
我的控制器的代码:
public function admin() {
$msg = Usr::get_data();
if ($msg == "pass") {
return View::make('user.admin');
} else {
return Redirect::to('user/login');
}
}
当我使用Redirect::to时没有问题,但如果我改为Redirect::route,它会说route[user/login]没有定义。但是我已经在routes.php中定义了它。为什么重定向::()不起作用,它们之间有什么区别?
Redirect::route
适用于a,而Redirect::to
适用于任何内部重定向。您添加的路由都没有命名,因此您不能使用重定向::路由
来引用它们。重定向::路由
用于a,而重定向::到
用于任何内部重定向。您添加的路由都没有命名,因此无法使用Redirect::route
引用它们
Redirect::to retrurns a redirect with the flash data
文档中的一个示例
return Redirect::to('user/login')->with('message', 'Login Failed');
而Redirect::route
则返回到命名路由的重定向
return Redirect::route('profile', array(1));
检查一下,它会让你更好地理解
编辑:
文档中的一个示例
return Redirect::to('user/login')->with('message', 'Login Failed');
而Redirect::route
则返回到命名路由的重定向
return Redirect::route('profile', array(1));
检查一下,它会让你更好地理解
编辑:
重定向::route也可以使用flash数据重定向我没有告诉它不能..是的,它可以使用flash数据重定向..这就是为什么我提供了类似“获取更多信息”的文档以改进您的答案。。这听起来有点含糊不清。我已经改进了……我想这是op想要的。我已经取消了否决票,但仍然混淆了‘重定向::用闪存数据重定向’重定向::路由也可以用闪存数据重定向。我没有告诉它不能。是的,它可以用闪存数据重定向。这就是为什么我提供了类似的文档请改进你的答案。。这听起来模棱两可。我已经改进了……我想这是op想要的。我已经取消了否决票,但仍然混淆了“重定向::用闪存数据重定向”