wake-up-neo.com

Geben Sie einen bestimmten http-Statuscode in Rails

Wie können Sie 503 Service nicht verfügbar in Rails für die gesamte Anwendung zurückgeben?

Wie machen Sie dasselbe auch für bestimmte Controller?

70
Sathish Manohar

Für die gesamte Anwendung:

# ApplicationController
before_filter :return_unavailable_status

private
  def return_unavailable_status
    render :nothing => true, :status => :service_unavailable
  end

Wenn Sie eine benutzerdefinierte Fehlerseite haben möchten, können Sie Folgendes tun:

render 'custom_unavailable_page', :status => :service_unavailable    

Wenn Sie es für bestimmte Controller nicht möchten:

# SomeController
skip_before_filter :return_unavailable_status
73
iwasrobbed

Sie können head verwenden

head 503
# or
head :service_unavailable
95