目前我遇到了一个我觉得难以解决的错误。该错误涉及\Request::route()
返回NULL
当notFoundHttpException
被触发,并且我的自定义错误视图被呈现。Laravel 5 - 不适用于notFoundHttpException的路由
问题是我的应用程序需要当前的路线才能做各种事情。我认为..::route()
返回NULL
是“正常的”,因为路线不存在。
这是我展示我的自定义错误观点:
// App\Exceptions\Handler
return response()->view('layouts.default', [
'main_content' => view('errors.'.$e->getStatusCode())
], $e->getStatusCode());
当我打电话\Request::route()
我的观点里,它返回NULL
。
任何人都有任何想法如何解决这个干净的方式?
编辑
我目前工作的应用程序是一个多域系统。需要路由来确定当前请求的域名。
所有路由都一个组里面包裹:
Route::group(['domain' => {domain}.{tld}], function()
{
// Application routes...
}
要确定域:
$domain = \Request::route()->domain;
$tld = \Request::route()->tld;
// Retrieve from database...
是有变通,如:
// Url requested: mydomain.com/notexistingpage
$url_parameters = @explode(".", $_SERVER['HTTP_HOST']);
$domain = $url_parameters[0];
$tld = $url_parameters[1];
// Retrieve from database...
不过,我想继续使用路由器来提供参数。我将这个问题标记为已回答。
谢谢您的回答,但它无法正常工作。就像我说的那样,路由不存在,所以它返回null。我会更新我的问题,以明确为什么我的应用程序“需要”路线。 –