2010-08-24 31 views
4

我目前使用ambethia的用於導軌的recaptcha插件。我想禁用消息用於導軌的recaptcha插件

「不正確,驗證碼 - 溶膠」

只要用戶正確輸入錯誤的驗證碼。我應該如何去做這件事?

在源文件中我得到周圍錯誤消息

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

回答

3

該插件設置閃光燈下列標記(更精確地閃光[:recaptcha_error]),即,它不會自動顯示消息。很可能你有一段代碼顯示所有的Flash消息。嘗試將其刪除和/或不顯示flash [:recaptcha_error]。

+1

我看。非常感謝你 – denniss 2010-08-25 01:50:01

0

我已經解決了這一點,這是最不尋常的事情,我也碰到過,我的語法是以前:

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

我改成了這樣:

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

因爲這個開關,recaptcha_response_field和recaptcha_challenge_field突然將值發回到表單。

我不明白爲什麼這是因爲所有我的表單變量都在切換之前回傳。

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 

也許它可以幫助你。謝謝

+1

+1對'flash.delete(:recaptcha_error)' – user664833 2012-04-20 22:45:01

+1

你正在做上帝的工作之子。 – 2012-05-04 23:14:33