4

我目前正在为 rails 使用 ambethia 的 recaptcha 插件。我想禁用消息

“不正确的验证码溶胶”

每当用户错误地输入错误的recaptcha。我该怎么做呢?

在源文件中,我得到围绕错误消息的以下标签

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

4 回答 4

11

因为 flash[] 是一个数组,您可以删除其中的元素。当我们使用 recaptcha gem 时,flash 数组包含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(更准确地说是flash[:recaptcha_error]),即它不会自动显示消息。很可能您有一段代码可以显示所有 Flash 消息。尝试删除它和/或不显示 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 将值返回到表单。

我想不出为什么会这样,因为我的所有表单变量在切换之前都被发回了。

于 2010-12-29T09:55:25.020 回答
0

您可能会得到这个,因为您没有放置翻译文件。我认为正确的方法不是删除闪存消息而是放入 i18n 文件

例子:

en:
  recaptcha:
    errors:
      incorrect-captcha-sol: 'Fail'

https://github.com/ambethia/recaptcha#i18n-support

于 2014-08-18T01:34:57.850 回答