Uygulamamın veritabanında bulunmayan bir kimliği aradığı bir duruma rastladım. Bir istisna atılır. Tabii ki, bu herhangi bir web geliştiricisi için oldukça standart bir durumdur. Müşteri bulunamayan durumdaKimlik bulunamadığı zaman denetleyici genelinde genel kurtarma - RoR
def show
@customer = Customer.find(params[:id])
rescue ActiveRecord::RecordNotFound #customer with that id cannot be found
redirect_to action: :index #redirect to index page takes place instead of crashing
end
, kullanıcı dizin sayfasına yönlendirildi: this answer için
Teşekkür Öyle gibi oldukça düzgün durumla kurtarma fırsatları kullanarak biliyoruz. Bu kesinlikle iyi çalışıyor.
Şimdi, bu her şey güzel, ancak gösterme, düzenleme, imha etme, vb. Gibi eylemlerde aynı kurtarma girişimlerini, yani her bir özel gereksinime ihtiyacı olan her her denetleyici yöntemini kullanmam gerekiyor. orada onun yöntemlerin herhangi birinde kimliği bulamazsa, bu indeks sayfasına yönlendirme edeceğini genellikle benim denetleyicisi anlatmak için herhangi bir yolu değil midir (veya:
işte sorum, söyledikten , genellikle, belirli bir görevi gerçekleştirmek)?
Başar, bu hile yapar, teşekkür ederim! Merak etme: Neden bu yöntem özel olmalı? – weltschmerz
Sadece temizlik için: yöntemin diğer denetleyicilere görünür olması gerekmez, bu nedenle özel olarak bildirilir. Yöntem özel olarak bildirilmemişse eşit olarak çalışır. – Baldrick
Ayrıca flash mesajı flaş ekleyebilirsiniz [: haber] = "Kayıt bulunamadı" –