我使用Laravel 5.1并想知道是否有更好的方法来进行路由重定向。
Route::get('user/login', 'UserController@login');
Route::get('login', function() {
return redirect()->to('user/login');
});
基本上,只要用户转到http://example.com/login
,他们就会重定向到http://example.com/user/login
。
有没有更好的方式或其他方法来做到这一点,还是我已经正确地做到了?谢谢!
答案 0 :(得分:4)
这就像它得到的一样简单
你也可以redirect('user/login')
保存几个字符
如果你有多个像这样的重定向,你可以一次处理它们
Route::pattern('user_path', '(login|logout)');
Route::get('{user_path}', function($user_path) {
return redirect('user/' . $user_path);
});
答案 1 :(得分:1)
Route::get('new/create_view','CreateController@create_view');
Route::post('new/create_view','CreateController@insert_view');
Route::get('new/create_table','CreateController@create_table');
Route::post('new/create_table','CreateController@insert_table');
Route::get('new/create_package','CreateController@create_package');
Route::post('new/create_package','CreateController@insert_package');
这是我使用路线的方式。简单的方法。当GET的时间,我调用一个控制器函数并且在那个特定的控制器函数里面,我写了逻辑代码。在POST中也做同样的事情。
另一种方式是GROUP Routing
Route::group(['namespace' => 'Admin'], function()
{
// Controllers Within The "App\Http\Controllers\Admin" Namespace
Route::group(['namespace' => 'User'], function()
{
// Controllers Within The "App\Http\Controllers\Admin\User" Namespace
});
});
例如:
Route::group(array('prefix' => 'api/v1', 'before' => 'auth.basic'), function()
{
Route::resource('pages', 'PagesController', array('only' => array('index', 'store', 'show', 'update', 'destroy')));
Route::resource('users', 'UsersController');
});