sql >> Databáze >  >> RDS >> Mysql

Rails:Zobrazí stránku údržby, pokud není k dispozici připojení k databázi

Pohled můžete vytvořit v jakémkoli řadiči root_path:

map.root :controller => "foo", :action => "index"

Řekněme, že tento pohled nazýváte „db_maintenance.html.erb“. V ovladači proveďte toto:

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

Podle vašeho názoru byste mohli uvést něco jako:

<h1>Sorry for the inconvenience</h1>
blah blah blah. This happened because of:
<pre><code><%= @error %></code></pre>

To samozřejmě pomáhá pouze v případě, že uživatel zasáhne hlavní stránku vašeho webu, ale odtud můžete snadno extrapolovat. Můžete přidat akci "def db_maintenance" do aplikačního řadiče a ručně určit, jaký pohled má také vykreslit. Není to dokonalé, ale mělo by to zvládnout.



  1. Přihlaste výstup DBMS_OUTPUT.Put_Line do tabulky v Oracle pomocí DBMS_OUTPUT.Get_Lines

  2. Oracle SQL plus jak ukončit příkaz v souboru SQL?

  3. Jak mohu použít executemany k vložení seznamu slovníků v Pythonu do MySQL

  4. Jak odečíst jednu od měsíce formátu data v mysql?