Mysql
 sql >> база данни >  >> RDS >> Mysql

Rails:Показване на страницата за поддръжка, ако няма налична връзка с база данни

Можете да създадете изглед в какъвто и да е вашият root_path контролер:

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>

Това, разбира се, помага само ако потребителят посети главната страница на вашия сайт, но можете лесно да екстраполирате от там. Можете да добавите действието "def db_maintenance" към контролера на приложението и ръчно да посочите какъв изглед също трябва да изобразява. Не е идеално, но трябва да свърши работата.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Мога ли да използвам неагрегирани колони с групиране по?

  2. изпращане на данни към MySQL с AJAX + jQuery + PHP

  3. Объркан съм относно едновременните MySQL връзки

  4. създадох масиви в PHP 5.6 с [] в PHP 7.1 дават фатална грешка

  5. MySQL. Първичен ключ в релационна таблица. Уникален идентификатор или множество уникални ключове?