0

アプリケーションの登録フォームにキャプチャを挿入しようとしています。キャプチャが有効かどうかを確認するコントローラー ヘルパー メソッドを配置する必要があります。コントローラーメソッドを提供しない単純な認証に OmniAuth-identity を使用しています。ユーザーの登録フォームが OmniAuth ハンドラーに直接投稿されるため、このヘルパー メソッドを確認できません。

if verify_recaptcha(:model => @post, :message => "Oh! It's error with reCAPTCHA!") && @post.save
    # ...
else
    # ...
end

OmniAuth-identityを使用してコントローラーヘルパーメソッドを配置する方法について、誰か助けてもらえますか?

4

2 に答える 2

0

Readme には、Omniauth-Identity ライフサイクル イベントをコントローラー アクションに接続するためのヒントが記載されています。これは、あなたが求めているものに合うように調整された例です:

# application.rb
use OmniAuth::Builder do
  provider :identity,
    :fields => [:email],
    :on_login => UsersController.action(:login)
end
于 2013-05-29T04:41:44.793 に答える
0

このPRは役に立ちます。

例えば:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :identity,  on_validation: lambda {|env| Captcha.valid_captcha?(env)}
end
于 2016-03-18T06:39:36.710 に答える