如题。lumen怎样实现Laravel中的Route::Controller。
例如:Route::Controller('admin','Admin\AdminController');
如题。lumen怎样实现Laravel中的Route::Controller。
例如:Route::Controller('admin','Admin\AdminController');
我这里有一个不太完美的实现方法。
在controller中添加一个函数:
public function routeDispatch(Request $request, $action = 'index')
{
$action = strtolower($request->getMethod()) . ucfirst($action);
if (method_exists($this, $action)) {
return $this->$action($request);
}
throw new \Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
}
然后将路由定向到这个方法,比如:
$app->addRoute(['GET', 'POST'], 'route[/{action:.+}]', 'RouteController@routeDispatch');
这种实现的问题就是,首先按照我的routeDispatch
的实现方式不能再注入额外的参数了。其次,如果你有 middleware,它还是会先执行middleware的检查,然后才会404之类的判断。
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答565 阅读✓ 已解决
1.9k 阅读
在lumen里面是不同的设置。
你可以在routes.php里面设置:
开启facades功能(不推荐)。打开app.php然后: