आप अपने रूट_पथ नियंत्रक में जो कुछ भी हैं, उसमें एक दृश्य बना सकते हैं:
map.root :controller => "foo", :action => "index"
मान लें कि आप इस दृश्य को "db_maintenance.html.erb" कहते हैं। अपने नियंत्रक में, यह करें:
def index
begin
@widgets = Widget.find(:all)
rescue Exception => e
# This will only happen if DB stuff fails
redirect_to :action => "db_maintenance", :error => e.message
end
end
...
def db_maintenance
@error = params[:error] # You might want to do something with this here or in the view
# renders the app/views/foo/db_maintenance.html.erb view
end
आपके विचार में, आप कुछ इस तरह रख सकते हैं:
<h1>Sorry for the inconvenience</h1>
blah blah blah. This happened because of:
<pre><code><%= @error %></code></pre>
यह, निश्चित रूप से, केवल तभी मदद करता है जब उपयोगकर्ता आपकी साइट के मुख्य पृष्ठ को हिट करता है, लेकिन आप वहां से आसानी से एक्सट्रपलेशन कर सकते हैं। आप अनुप्रयोग नियंत्रक में "डीफ़ db_maintenance" क्रिया जोड़ सकते हैं और मैन्युअल रूप से निर्दिष्ट कर सकते हैं कि इसे किस दृश्य को प्रस्तुत करना चाहिए। यह सही नहीं है, लेकिन इसे काम पूरा करना चाहिए।