サインインしていないユーザーがURLにヒットした場合、deviseはサインインページにそれらを転送した後、ユーザーを元のページに転送します。サインインビューでこの情報(元のルート/アクション)にアクセスするにはどうすればよいですか?私はユーザーがどこに行くのかに応じてguiを異なって表示したいと思います。サインイン時に元のURLを取得
0
A
答えて
0
したがって、deviseのセッションコントローラを拡張/上書きする必要があります。とき、このコントローラは、考案者から継承しているので
class SessionsController < Devise::SessionsController
def new
self.resource = build_resource(nil, :unsafe => true)
clean_up_passwords(resource)
@after_sign_in_url = after_sign_in_path_for(resource)
respond_with(resource, serialize_options(resource))
end
end
:これを行うには、hereから最新new
アクションコードをコピーして、このような工夫のセッションコントローラから継承するコントローラ(のは、セッションそれを呼びましょう)、それを貼り付けるにはコントローラーでアクションが定義されていないアクションは、Deviseのコントローラーによって処理されます。だから、そのnew
アクションを上書きするだけでいいです。あなたはこのように、スコープを使用している場合は、代わりに
# routes.rb
devise_for :users, :controllers => { :sessions => 'sessions' }
:
# routes.rb
devise_scope :user do
get 'login' => 'sessions#new', :as => :new_user_session
end
今、あなたのビューで@after_sign_in_url
にアクセスすることができます
最後に、あなたのルートがファイルを編集することはそう、この変更が有効になります!
関連する問題
- 1. サインイン情報をURLに
- 2. 変更時にインラインURLを取得
- 3. HttpContext.Current.Server.Executeの後に元のURLを取得する方法
- 4. Angularjsで日時を取得 - 取得のURLからロードコンテンツを
- 5. PHP:参照元URLを取得するには?
- 6. Kestrelで書き直した後の元のURLを取得
- 7. PHPで元のURLリファラーを取得しますか?
- 8. JavaScriptで第3レベルの参照元URLを取得
- 9. Railsで呼び出し元のURLを取得する
- 10. phpで参照元URLを取得する(パラメータを含む)
- 11. Officeデスクトップアプリケーションにサインインしたユーザーのユーザー名を取得
- 12. Cで親URL参照元を取得する方法#
- 13. HTACCESS#リダイレクトURLにサインインしますか?
- 14. 元のサイズを取得
- 15. サインイン後にcurrent_user.idを取得する方法
- 16. Volleyのエラー画像取得時にURLが正しくない
- 17. AWS CognitoサインインiOS(即時)
- 18. URLをAngular1.5に取得
- 19. .NETコアでサインインされたユーザーのカスタムプロパティを取得する
- 20. 外部のURLから公式の日時を取得する
- 21. 一時ディレクトリ内のファイルのファイルパスとURLを取得
- 22. AJAX訪問元の取得
- 23. すぐにsucessfulにサインインした後にGoogleの連絡先を取得
- 24. ImageLoaderでURLをロードした後、元のビットマップサイズを取得する方法| Android
- 25. 元の紹介ウェブサイトのURL紹介を取得できますか?
- 26. カテゴリの取得URL
- 27. 復元時に同じIDを取得した同じIDを持つビュー
- 28. WordPressのブログページURLを取得
- 29. MagentoルートカテゴリのURLを取得
- 30. cronジョブのURLを取得
「[元のタスクへのログイン後のリダイレクト]」の可能な複製(http://stackoverflow.com/questions/5359195/redirecting-after-a-login-to-the-original-task) –
@Jordanこれは重複ではありません。 Deviseはユーザーを適切なWebページに正しく送信します。私はちょうどそのページが何であるかを知りたがっています*。あなたがリンクした質問はこれを求めておらず、答えはそれに対処していません。 – paleozogt