當我們試圖查找一條不存在的記錄時,會產生 ActiveRecord::RecordNotFound
例外。
這種情況通常發生在我們嘗試使用 find
方法根據 id
查找記錄時,而該id對應的記錄不存在。
為了處理 ActiveRecord::RecordNotFound
例外,我們可以使用 begin/rescue
捕獲該例外,並在捕獲到例外時執行一些操作(例如顯示一個錯誤消息、重定向到另一個頁面)
也可以在 ApplicationController
上使用 rescue_from
方法來捕捉 ActiveRecord::RecordNotFound
等例外訊息,以在整個應用程序中處理這些例外。
通過在 ApplicationController
上使用 rescue_from
方法,我們可以避免在每個 Controller
中重複處理相同的例外訊息!