Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails recaptcha rails插件_Ruby On Rails_Ruby On Rails Plugins_Captcha_Recaptcha - Fatal编程技术网

Ruby on rails recaptcha rails插件

Ruby on rails recaptcha rails插件,ruby-on-rails,ruby-on-rails-plugins,captcha,recaptcha,Ruby On Rails,Ruby On Rails Plugins,Captcha,Recaptcha,我目前正在使用ambethia针对rails的recaptcha插件。我想禁用该消息 “不正确的验证码sol” 每当用户错误地输入错误的recaptcha时。我该怎么做呢 在源文件中,我得到了错误消息周围的以下标记 <p class="recaptcha_error">incorrect-captcha-sol</p> 不正确的验证码 插件设置flash(更准确地说是flash[:recaptcha_error]),即它不会自动显示消息。最有可能的情况是,您有一段代码显

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

“不正确的验证码sol”

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

在源文件中,我得到了错误消息周围的以下标记

<p class="recaptcha_error">incorrect-captcha-sol</p>
不正确的验证码


插件设置flash(更准确地说是flash[:recaptcha_error]),即它不会自动显示消息。最有可能的情况是,您有一段代码显示所有flash消息。尝试删除它和/或从显示中排除flash[:recaptcha_error]。

我已经解决了这个问题,这是我遇到的大多数不寻常的事情,我的语法以前是:

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

我把它改成这样:

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

由于此切换,recaptcha_response_字段和recaptcha_challenge_字段突然将值发回表单


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

因为flash[]是一个数组,您可以删除其中的元素。当我们使用recaptcha gem时,闪存阵列包含recaptcha_error元素,因此您只需使用以下内容删除此元素: 闪存。删除控制器中的(:recaptcha_错误)

例如:

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

也许它能帮助你。谢谢

您可能会收到此消息,因为您尚未放置翻译文件。我认为正确的方法不是删除flash消息,而是放i18n文件

例如:

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