我正在处理一些奇怪的事情。我正在查看request.env['recaptcha.valid']
我添加到请求变量的特殊密钥,该密钥仅适用于Rails控制器。
根据上述变量的状态,如何从Rails控制器中提出rails验证错误,而不是在Model中处理这个逻辑?
答案 0 :(得分:1)
查看before_filter
,可以选择渲染或重定向,或者只是在调用操作之前设置一些内部状态(@captcha_failed = true
)。
你可能想要这样的东西:
class MyController < ApplicationController
before_filter :check_captcha
# ...
protected
def check_captcha
if params[:captcha] != request.env['recaptcha.valid']
redirect_to "index", notice: "Invalid captcha"
end
end
end