当 Warden 中的身份验证策略失败时,可以将消息传递给该fail!
方法。如何在我的默认失败应用程序操作中访问此消息,以便我可以将其显示在 Flash 消息中?我试过request.env['warden'].message
了,但是在查看了Warden::Proxy
这个变量的代码之后,它只是为获胜策略设置的。想法?
问问题
1875 次
2 回答
4
使用时失败还是失败!方法,您可以从环境守望者对象中获取失败消息。
例子:
def unauthenticated
flash[:alert] = env["warden"].message unless env["warden"].message.blank?
end
http://www.rubydoc.info/github/hassox/warden/Warden/Proxy#message-instance_method
于 2014-10-30T09:28:34.590 回答
0
也许失败策略的另一种方式(来自最近的文档)是使用throw(:warden, :foo => 'bar')
. 你抛出的任何东西都将在你的失败应用程序中可用request.env['warden.options']
,包括所需的 url 字符串。高温高压
于 2012-11-10T08:06:33.743 回答