Kaip pakeisti Laravel klaidos pranešimą "Whoops, something went wrong"?

2014-09-23

Laravel klaidos atveju, jei išjungtas "debug" režimas, rodo klaidą "Whoops, something went wrong" ir įrašo pačią klaidą į laravel.log failą. Kaip padaryti, kad pranešimas būtų lietuvių kalba, o gal ir visai kitoks? Tai visai paprasta.

1. Sukuriame savo "error" puslapį

Tiesiog sukuriame Views failą kataloge app/views, kur įrašome savo norimą tekstą. Sakykime, taip: app/views/error.blade.php:
<html>
<body>
<div style="text-align:center; margin: 20px auto">
<img src="{{ asset('images/logo.png') }}" />
<br /><br />
Įvyko klaida. Ji įrašyta į mūsų klaidų žurnalą, ir mes išspręsime problemą kaip įmanoma greičiau.
<br /><br />
<a href="{{ url('/') }}">Grįžti į pagrindinį puslapį</a>
</div>
</body>
</html>

 

2. Iškviečiame klaidos puslapį, įvykus klaidai

Tai daroma per failą app/start/global.php - ten yra tokios eilutės:

App::error(function(Exception $exception, $code) {
  Log::error($exception);
});

Taigi, galime prirašyti į funkcijos pabaigą savo norimus veiksmus. Tai yra - klaidos puslapio parodymą su norimu klaidos kodu: sakykime, 500.

App::error(function(Exception $exception, $code) {
  Log::error($exception);
  if(!Config::get('app.debug')) {
    return Response::view('error', array(), 500);
  }
});

Kaip matote, dėl viso pikto patikriname dar kartą - rodome mūsų klaidos puslapį tik kai išjungtas "debug" režimas, priešingu atveju Laravel naršyklėje parodys pilną klaidos pranešimą su detalia ataskaita.


(Mailchimp sistema jums atsiųs patvirtinimo laišką, nepamirškite patvirtinti)


Komentarų: 2

Povilas (2014-09-23 16:15)

Ne, dizainą pats kuri nuo nulio savo View faile kaip tik nori. Gali ir tą patį nukopijuoti, aišku.


Klausimas (2014-09-23 16:06)

Dizainas lieka tas pats?





Naujausi PHPpamokos.lt online-kursai

23 EUR (79.41 Lt)
23 EUR (79.41 Lt)
23 EUR (79.41 Lt)
Nuo Laravel 4 prie Laravel 5
Povilas Korop

23 EUR (79.41 Lt)
MySQL: nuo pradmenų iki optimizavimo
Povilas Korop
23 EUR (79.41 Lt)
OOP: objektinis programavimas su PHP
Povilas Korop
23 EUR (79.41 Lt)
Kaip kurti Wordpress pluginus?
Arūnas Liuiza

23 EUR (79.41 Lt)
PHP online-kursas pradedantiesiems
Povilas Korop