0
我在app\ExceptionsHandler.php
中有一些代码检查URL是否存在,如果不存在,那么它会检查数据库是否是自定义URL,如果是的话就会返回一个视图。我认为这个问题是因为它没有通过网络中间件传递,所以会话和身份验证都没有启动,因为Auth::id()
为空,即使我100%登录Laravel 5缺少页面和authed用户
是否有一个更容易如何做到这一点?
public function render($request, Exception $exception)
{
if($exception instanceof NotFoundHttpException)
{
if(\App\EventMeter::isURL()) {
$ec = new EventsController();
return $ec->eventMeter();
}
if(\App\Tournament::isTournamentURL()) {
$t = new TournamentController();
return $t->home();
}
if(BountyHunter::isURL())
{
$bhc = new BountyHunterController();
return $bhc->home();
}
return response()->view('errors.missing',array(), 404);
}
return parent::render($request, $exception);
}
我想因为你实例化了控制器!只是重定向当前请求,像这样'return redirect() - > route('route.name');' – Maraboc
这并不能解决问题,因为URL总是动态的。如果我要让路由成为一个静态的URL,那么这将工作正常,但URL永远不会保持不变 – Ben
命中此方法'$ ec-> eventMeter()'的URL会改变? – Maraboc