試圖爲Laravel實現自定義錯誤處理程序,以便當它被推送時,404的等比正常的紅色和黑色屏幕更好。Laravel在FileViewFinder.php中查找視圖的錯誤處理程序
我發現這其中的意義的作品:
App::error(function(Exception $exception, $code)
{
$pathInfo = Request::getPathInfo();
$message = $exception->getMessage() ?: 'Exception';
Log::error("$code - $message @ $pathInfo\r\n$exception");
if (Config::get('app.debug')) {
//return;
}
switch ($code)
{
case 403:
return Response::view('error/403', compact('message'), 403);
case 500:
return Response::view('error/500', compact('message'), 500);
default:
return Response::view('error/404', compact('message'), $code);
}
});
但創下了404頁時,等它返回:
Error in exception handler: View [error/404] not found. in /Applications/MAMP/htdocs/buildsanctuary/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:146
如果我改變了看法,以我的自定義視圖一個/嘗試在Response :: view中創建路徑。例如
Response::view('app/views/error404')
我收到相同的錯誤。
或者,如果我改變行更改爲:
View::make('a view here')
然後我得到一個白色的屏幕。任何想法如何使這些錯誤鏈接到我的意見中的文件夾?
謝謝。
2014-12-31
Lovelock
+0
如何在你的'views'目錄結構是什麼樣子? –
+0
root> app> views> errors> 404.php –
+0
'errorS''Response :: view('errors/404',...)'should work –