我已經從數據庫中獲取的事情,當這樣做之前萬噸的次數等如何捕捉在Rails 500內部服務器錯誤
對於我的特定情況下,我使用a 3rd party連接到一個硬件。 ..無論如何,在出現錯誤的情況下,例如無效ID顯然,我們想要引發異常或救援......但不幸的是,我不知道如何提高它,因爲當它被擊中,一切都太遲了(我認爲)
這裏......
#
# getting params and saving item above...
#
if item.save
device = RubySpark::Device.new("FAKEUNITID800")
device.function("req", "ITEM")
redirect_to controller: 'items', action: 'edit_items'
end
如果這是一個有效的ID,一切都會起作用,它會帶你到/edit
頁面!但問題是,有一個無效的ID,它只是做...
Completed 500 Internal Server Error in 897ms
RubySpark::Device::ApiError - Permission Denied: Invalid Device ID:
我檢查了以下教程
- Rescue StandardError, Not Exception
- How to catch 404 and 500 error in Rails?
- Dynamic Rails Error Pages
但說實話,他們讓我更加困惑。也許我有這個錯誤的方法。我一直認爲,首先你提出請求,然後你有一個回退的情況,取決於你得到的狀態(即200,500,404)......你從那裏出發。
你就不能換了'RubySpark :: Device'調用'begin' ...'rescue'塊並處理'ApiError'異常? – Brian