私はReact + Railsアプリケーションを持っていますが、私は認証にdeviseを使用しています。私は、確認期間が過ぎた後にログインしようとしているユーザーのためにカスタムエラーメッセージを生成しようとしています。ログイン中にユーザーがdeviseを使用して確認したかどうか確認してください
現在、ログインがブロックされていますが、ブロックされた理由を説明するカスタムエラーメッセージは表示されません。
マイsession_controller.rb
def create
if BANNED_EMAILS.include?(params["user"]["email"])
render :status => 500, :json => { error: true, message: 'Your account has been suspended. Please contact us for more information.' }
//I get an error `ActiveRecord::RecordNotFound (Couldn't find User)` when I try this even though the user has already signed up and exists in the database
elsif User.find_by_email!(params[:user][:email]).confirmed? == true
render :json => { error: true, message: 'Please confirm your registered email to access your account.'}, :status => 500
else
self.resource = warden.authenticate!(auth_options)
sign_in(resource_name, resource)
render :status => 200, :json => resource.to_json
end
エンド
ログインするか、同じエラーを表示しないためにいくつかの他の方法があるしようとしている利用者の情報を引き出すためにいくつかの他の方法はありますか?
あなたは両方の電子メールとcaluseがdowncased WHERE'/ – Ruslan
@Ruslanが正確にどのように私がすべきupcased '使用することができますwhere句に電子メールを書きますか?私は 'どこに'試みたが、多分私は属性を正しく渡さなかった – anonn023432
あなたはどのデータベースを使用していますか? – Ruslan