4

私は現在、レール用の ambethia の recaptcha プラグインを使用しています。メッセージを非表示にしたい

「間違ったキャプチャ ソル」

ユーザーが間違った recaptcha を誤って入力したとき。これを行うにはどうすればよいですか?

ソースファイルでは、エラーメッセージを囲む次のタグを取得します

<p class="recaptcha_error">incorrect-captcha-sol</p>
4

4 に答える 4

11

flash[] は配列であるため、その中の要素を削除できます。recaptcha gem を使用すると、フラッシュ配列にrecaptcha_error要素が含まれるため、コントローラー内で : flash.delete(:recaptcha_error)を使用してこの要素を削除するだけです 。

例えば ​​:

if  verify_recaptcha(:model=>@object,:message=>"Verification code is wrong", :attribute=>"verification code") && @object.save
  #your code if succes
else
  flash.delete(:recaptcha_error)
  #your code if its fail
end

多分それはあなたを助けることができます。ありがとう

于 2011-04-16T18:30:51.573 に答える
3

プラグインはフラッシュ(より正確にはflash [:recaptcha_error])を設定します。つまり、メッセージを自動的に表示しません。ほとんどの場合、すべてのフラッシュメッセージを表示するコードがあります。それを削除するか、flash [:recaptcha_error]を表示から除外してみてください。

于 2010-08-24T06:58:12.900 に答える
0

私はこれを解決しました。それは私が遭遇した珍しいことのほとんどです。私の構文は以前は次のとおりでした:

<table>
<form>
<tr><td></td></tr>
</form>
</table>

私はこれを次のように変更しました:

<form>
<table>
<tr><td></td></tr>
</table>
</form>

この切り替えにより、突然 recaptcha_response_field と recaptcha_challenge_field が値をフォームにポストし直します。

すべてのMYフォーム変数が切り替え前にポストバックされたため、これがなぜなのか考えられません。

于 2010-12-29T09:55:25.020 に答える