我制作了自己的 SessionController,它扩展了 Devise::SessionsController。这样,它可以根据用户是在浏览器中还是使用移动设备来响应 HTML、JSON 和 XML。
如果格式是HTML,我就打电话super
,一切正常。如果是 JSON/XML,我希望能够在登录失败时显示错误以及 401 状态代码。现在我有:
respond_to do |format|
format.html { super }
if current_user
...
else
format.json { render :json => { :status => 401 } }
end
end
我想添加:errors => ???
到该哈希。但是如何从 Devise 获取错误列表?