ApplicationControllerクラスからの要求を処理しようとしているコントローラを取得する方法はありますか?Rails 3.1のApplicationControllerから現在のコントローラオブジェクトを取得できますか?
基本的に私はHTTPSが必要なくなったときにHTTPに戻る方法を見つけようとしています。私は指示通りにSSLを使用するように工夫を設定している:
#in config/environments/production.rb
config.to_prepare { Devise::SessionsController.force_ssl }
config.to_prepare { Devise::RegistrationsController.force_ssl }
しかし、一度工夫コントローラは、それがそこに居たSSLにリダイレクトします。 Devise wikiには、Deviseアクションが完了するとHTTPにリダイレクトされるコードスニペットがありました。ただし、ユーザーが他の手段を使用して移動した場合は機能しません。
.NETの考え方からは、おそらくすべてのコントローラの基本クラス(ApplicationController)で何かできることがあります。 SSLを必要とするコントローラクラス名の配列を持つことができる場合は、現在のコントローラクラスがそれを必要としない場合はHTTPにリダイレクトします。私はRuby and Rails初心者ですから、これはまったく正しい方法を見ていないかもしれません...
ありがとう、 ダニー。
を実行して、あなたが解決するためにどのような例がありますができますか?なぜあなたはそれが必要なのか分かりません。 – mliebelt
私はさらに精巧に質問を編集しました – codedog