Ruby on Rails设计Bootstrap Recaptcha错误在验证码失败时显示不正确

时间:2018-03-12 20:19:06

标签: ruby-on-rails ruby twitter-bootstrap devise recaptcha

我正在运行rails 4.2.5并且我通过devise / twitter-bootstrap-rails / devise-bootstrap-views生成了所有用户创建页面,然后通过本教程添加了recaptcha: https://github.com/plataformatec/devise/wiki/How-To:-Use-Recaptcha-with-Devise

点击重新访问时,注册过程正常,但是当您输入信息并且不进行重新访问时,整个页面会重新加载并清除,并且它会抛出一封"电子邮件不能成为空白"尽管已经填补了这个错误。

任何有关如何解决错误处理的帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

假设您已经使用了操作方法链接中的代码 - 只需尝试将一些puts日志添加到控制台并查看您获得的内容:

class RegistrationsController < Devise::RegistrationsController
  prepend_before_action :check_captcha, only: [:create] # Change this to be any actions you want to protect.

  private
    def check_captcha
      # v---- (1) One log here
      puts "Verify recaptcha: #{verify_recaptcha}"
      unless verify_recaptcha
        # v---- (2) Another one here
        puts "Signup params: #{sign_up_params}"
        self.resource = resource_class.new sign_up_params
        resource.validate # Look for any other validation errors besides Recaptcha
        # v---- (3) And one here
        puts "Validation errors: #{resource.errors.full_messages}"
        respond_with_navigational(resource) { render :new }
      end 
    end
end

希望这会给你足够的信息来解决这个问题。

奖金https://tenderlovemaking.com/2016/02/05/i-am-a-puts-debuggerer.html是如何使用简单的puts调试代码并找到出路的好主意。