Несколько месяцев go Я также столкнулся с множеством проблем, связанных с этим, после того как, ниже, javascript хак успешно работает для меня: -
Здесь я добавил функцию отправки, чтобы предотвратить неаутентифицированную регистрацию
<script type="text/javascript">
$("#new_user").on("submit", function (e) {
return isCaptchaChecked();
})
function isCaptchaChecked() {
if(grecaptcha && grecaptcha.getResponse().length <= 0){
alert('Please fill the recaptcha.')
return false;
}else{
return true;
}
}
</script>
А потом в контроллере регистрации: -
def create
# then add a check in create method from backend
unless verify_recaptcha(model: User.new)
flash[:error] = "Wrong Captcha!"
return redirect_to users_registrations_new_user_path
end
.......
.......
.......
end
Таким образом я решил свою проблему. Надеюсь, это поможет и вам.