我试图根据惯例设置一个简单的路由系统。 我的应用程序将具有此结构
Http
--Controllers
----Admin
------User.php
----Books
------Add.php
----etc...
我希望能够添加新的文件夹和控制器,而无需手动将路由添加到web.php文件中。 例如,我希望路由使用User.php控制器响应/ Admin / User URL。
我正在尝试这样的事情,但我不明白如何编写内部路由器...
Route::any('/{module}/{action?}', function($module, $action = 'index') {
Route::get('*',$module.'\'.$action.'@index' );
});
似乎Rout:get(' *' ......永远不会匹配。
PS控制器命名空间是正确的,我重新加载了composer。 如果调用harcoded,控制器就会工作。
我也试图逃避' \'
$r=$module.'\\'.$action.'\\'.$action.'Ctl@index';
Route::get('/',$r );
但没有结果。该路线被拦截但我没服用
答案 0 :(得分:0)
我似乎想出了这个
Route::get('/{module}/{action}', function($module,$action) {
return App::make('\App\Http\Controllers\\'
.$module.'\\'.$action)->callAction('index', []);
});
还有其他更好的方法吗?