ruby-on-rails-3 – Rails3 – 如何在没有DoubleRender错误的bef
发布时间:2020-12-16 23:08:00 所属栏目:百科 来源:网络整理
导读:我有一个before_filter来检查API密钥的有效性.如果密钥无效,我想呈现仅标头403响应. 在我的控制器中: before_filter :validate_api...def validate_api if params[:api_key].present? and ApiKey.find(params[:api_key]) return true else render head :for
我有一个before_filter来检查API密钥的有效性.如果密钥无效,我想呈现仅标头403响应.
在我的控制器中: before_filter :validate_api ... def validate_api if params[:api_key].present? and ApiKey.find(params[:api_key]) return true else render head :forbidden end end 问题是我得到一个DoubleRender错误,大概是当Rails进入操作并试图反正呈现响应时.据我了解,如果before_filter呈现或重定向,Rails会阻止执行操作.那不是这样吗? 如何在before_filter中呈现仅标头响应并阻止执行操作? 解决方法
你试过在else部分返回false吗?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |