2017-01-02 20 views
4

laravelがデータベースに接続できないときにカスタムビューを表示できる方法があるかどうか疑問に思っていましたか?私はこれのための答えをグーグルで試してみましたが、実際に有用なものは何も表示されません。laravelでDBの処理に失敗しましたか?

私は現在入手:

Whoops, looks like something went wrong. 

2/2 
QueryException in Connection.php line 770: 
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES) (SQL: select * from `users` where `users`.`id` = 1 limit 1) 

感謝。

+0

'.env'ファイルでデータベースの詳細をチェックしてください。データベース接続を' .env'ファイルで修正してください。これはうまくいくはずです。 –

+0

私はそれを修正したくない、私は故意にカスタムビューを表示しようと壊した。私の質問は、どのようにカスタムビューを表示するのですか? – Ashkru

+0

カスタムビューはどういう意味ですか? –

答えて

2

app/Exceptions/Handler.phpには、renderメソッドにアクセスしてください。あなたは

は、カスタムコードでdd($e->getMessage());を置き換え、次の例外がquerypdo例外を処理するためにチェック

if ($e instanceof \Illuminate\Database\QueryException) { 
     dd($e->getMessage()); 
     //return response()->view('custom_view'); 
    } elseif ($e instanceof \PDOException) { 
     dd($e->getMessage()); 
     //return response()->view('custom_view'); 
    } 
を追加することができます。

+0

ありがとう、私は500のエラーコードを処理するために同様の何かを行うことができます何らかの方法はありますか? – Ashkru

+0

httpエラーのカスタムビューを表示したい場合は、あなたのエラーファイルを 'views/errors/error_code.blade.php'(あなたの場合' views/errors/500.blade.php')に入れることができると思います。 Laravelはそのファイルを自動的に取得する必要があります。あなたの問題を解決した場合は、その答えを受け入れてください。 – shoieb0101

関連する問題