Lumen 的路由不能嵌套这个问题你们是如何接受的?
直接贴代码
// routes.php
$app->group(['prefix'=>'api',], function () use ($app){
$app->group(['prefix'=>'v2',], function () use ($app) {
$app->get('/test', function () use ($app) {
return $app->version();
});
});
$app->get('/v1', function () use ($app) {
return $app->version();
});
});
# document root
php artisan --version
Laravel Framework version Lumen (5.3.1) (Laravel Components 5.3.*)
cd public
php -S 127.0.0.1:3000 index.php
get http://127.0.0.1:3000/api/v1
Lumen (5.3.1) (Laravel Components 5.3.*)
get http://127.0.0.1:3000/api/v2/test
404 NotFoundHttpException in RoutesRequests.php line 461:
这可咋整,完全无法接受,换回了 laravel 5.1 :cry:
append
感谢1楼(@song)的建议,不过其实我要说的不只是这一个问题呢。我的问题是:lumen的路由的group似乎只能被定义一次呢
//bootstrap/app.php line 93-98
$app->group(['namespace' => 'App\Http\Controllers'], function ($app) {
require __DIR__.'/../app/Http/routes.php';
});
//routes.php
$app->group(['prefix' => 'api/v2', 'namespace' => 'App\Http\Controllers'], function () use ($app) {
$app->get('test', 'Test\ExampleController@index');
});
上面的代码,如果routes.php 下没有 namespace 那么子目录下的控制器也找不到。必须在group 这里重复声明
推荐文章: