私は、Deviseユーザーが最新の条件&を受け入れるかどうかをチェックするbefore_filterを構築しています。セッションを作成する前にユーザの電子メールを作成するrails 4
私はサインインをブロックし、「新しい条件を受け入れる」ページにリダイレクトする方法を理解しようとしています。
ユーザーを見つけてusers.has_expired_termsを確認するための安全な方法で電子メール/パスワードにアクセスする方法を理解できませんか?ここ
が、私は私のユーザーにしようとしているものです:セッション上書きコントローラー
class Users::SessionsController < Devise::SessionsController
before_action :expired_terms, only: [:create]
#other filters redacted
def expired_terms
redirect_to reauthenticate_terms_path(self.resource) if self.resource.has_expired_terms?
end
def create
self.resource = warden.authenticate!(auth_options)
sign_in(resource_name, resource)
yield resource if block_given?
check_for_token("invite_token", session[:invite_token]) if session[:invite_token].present?
if session[:invite_token].present?
[:invite_token].each { |k| session.delete(k) }
end
redirect_to after_sign_in_path_for(resource)
end
end
私はそれを行う方法についてのベストプラクティスがあると確信しているが、私は1つを見つけるように見えることはできません。
何I電話をかける。これは既に登録されているが、新しい利用規約を再認証する必要があるユーザー向けです – NothingToSeeHere