2013-12-11 19 views

Odpowiedz

29

Można użyć

To daje nazwę bazy danych dla podłączonej bazy, dzięki czemu można go używać, aby sprawdzić, czy aplikacja jest z nim związane.

Ale ... Laravel połączy się z bazą danych tylko wtedy, gdy potrzebuje czegoś z bazy danych, aw razie próby połączenia, jeśli wykryje jakieś błędy, podniesie numer PDOException, więc to jest sposób na przekierowanie Twój użytkownikowi przyjaznej strony:

App::error(function(PDOException $exception) 
{ 
    Log::error("Error connecting to database: ".$exception->getMessage()); 

    return "Error connecting to database"; 
}); 

Dodaj do tego pliku app/filters.php.

Moim zdaniem, tak naprawdę nie trzeba sprawdzać, czy jest połączony, czy nie, po prostu podejmij odpowiednie działania w przypadku zamknięcia wyjątku.

+1

Dziękujemy! To się udało. –

+0

Jest to przydatne w przypadku kontroli zdrowia w Amazon w połączeniu z próbą uczynienia witryny w większości dostępną, gdy baza danych nie działa (tj. W wielu miejscach korzysta z treści z pamięci podręcznej). –

0

pracy :) -

Wystarczy dodaje ten kod do aplikacji/filters.php

App::error(function(PDOException $exception) 
{ 
    Log::error("Error connecting to database: ".$exception->getMessage()); 

    return "Error connecting to database"; 
}); 
5

można użyć następującego kodu:

try{ 
    DB::connection()->getDatabaseName(); 
}catch(Exception $e){ 
    echo $e->getMessage(); 
} 
Powiązane problemy