我正在运行rails 4.2.5并且我通过devise / twitter-bootstrap-rails / devise-bootstrap-views生成了所有用户创建页面,然后通过本教程添加了recaptcha: https://github.com/plataformatec/devise/wiki/How-To:-Use-Recaptcha-with-Devise
点击重新访问时,注册过程正常,但是当您输入信息并且不进行重新访问时,整个页面会重新加载并清除,并且它会抛出一封"电子邮件不能成为空白"尽管已经填补了这个错误。
任何有关如何解决错误处理的帮助都将不胜感激。
答案 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
调试代码并找到出路的好主意。