2016-09-10 22 views
5

özel bir ileti görüntüler: Eğer komutu php artisan down yürütmek, bu bakım modunda altında uygulamayı koyacağızlaravel Ben Bakım Modu için laravel docs Ayrılıyorum Bakımında Modu

https://laravel.com/docs/5.3/configuration#maintenance-mode

ve iade 503.blade.php görünümü.

iyi çalışır, ama gerçekten iş yapamaz bir seçenek bulduğumda .. vardır:

php artisan down --message='Upgrading Database' --retry=60 

Ben görünümünde mesaj görüntüleyebilir istiyorum, {{ $message }} ile bariz bir seçim erişen çalıştı başarı olmadan tanımsız değişken döndürür.

Soruma soru: Nasıl erişilir?

cevap

5

Varsayılan olarak 503.blade.php görünümü bu iletiyi kullanmaz.

Bu ileti, storage/framework/downgenerated by php artisan down komutuyla JSON biçimindeki bir dosyada kullanılabilir.

Sen görünümünde mesaj erişmek için böyle bir şey yapabileceğini: (503.blade.php dahil) tüm "hata" görünümleri $exception sahip olarak

{{ json_decode(file_get_contents(storage_path('framework/down')), true)['message'] }} 
+0

Bkz. Https://stackoverflow.com/a/41654147/107282 – jezmck

14

Aslında, bu "json_decode" şeyler gerekmez değişken.

Böylece, yalnızca {{ $exception->getMessage() }} görünümünü kullanabilirsiniz ve artisan down --message komutuna ilettiğiniz tam değeri elde edersiniz. Eğer bakım sayfasında detaylı bilgi (sadece mesajı) istiyorsanız

+1

Ayrıca, zamanı göstermek için {{$ exception-> retryAfter}} kullanabilir. – vivanov

+0

bu mesaj kabul edilmeli – hadi

1

, ayrıca kullanabilirsiniz $exception->retryAfter (Int), $e->willBeAvailableAt (Karbon) ve $e->wentDownAt (Karbon). Elbette, artisan komutunda --retry parametresini ayarlamanız gerekir.