我有以下代码:
Route::group(array('namespace' => 'admin'), function() {
Route::group(array('prefix' => 'admin'), function() {
Route::get('group', array('as' => 'adminGroup', 'uses' => 'GroupController@index'));
Route::get('group/index', array('as' => 'adminGroupIndex',
'uses' => 'GroupController@index'));
});
});
和控制器
namespace admin;
class GroupController extends \BaseController {
protected $layout = 'dashboard';
public function index()
{
$this->layout->content = \View::make('admin/group/index');
}
}
如果我将网址指向:
http://localhost/laravel/public/admin/group/index
完美无缺,但当我指出:
http://localhost/laravel/public/admin/group
不起作用。它只是重定向到:
http://localhost/laravel/public/user/login
但是当我不使用子文件夹时,一切都很完美!
编辑:已解决
我已经开始安装laravel管理员然后停止了,因为没有安装认证系统。所以我安装了Sentry2并正在配置管理组。在分析了一些Laravel管理员设置之后,我意识到它正在使用URI' admin'并且还重定向到“用户/登录”#39;如果我没有通过身份验证。
现在一切都很完美!
答案 0 :(得分:1)
你可能有另一条路线用" auth"这是抓住/admin/group
网址并将其发送到login
。
我刚刚在这里复制了你的代码,它对我来说很好。为了简单起见,我刚用这段代码替换了routes.php
文件:
<?php
namespace admin;
class GroupController extends \Controller {
protected $layout = 'dashboard';
public function index()
{
return 'index!';
}
}
\Route::group(array('namespace' => 'admin'), function() {
\Route::group(array('prefix' => 'admin'), function() {
\Route::get('group', array('as' => 'adminGroup', 'uses' => 'GroupController@index'));
\Route::get('group/index', array('as' => 'adminGroupIndex',
'uses' => 'GroupController@index'));
});
});
两者
http://development.consultoriodigital.net/admin/group
http://development.consultoriodigital.net/admin/group/index
使用
显示页面时效果很好index!