0

Devise::SessionsControllerを拡張する独自のSessionControllerを作成しました。そうすれば、ユーザーがブラウザーを使用しているか、モバイルデバイスを使用しているかに応じて、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からエラーのリストを取得するにはどうすればよいですか?

4

1 に答える 1

0

通常、フォームエラーはに保存されobject.errorsます(ビューで使用するため)。resourceDeviseコアSessionsControllerのコードに基づいて、オブジェクトからエラーを引き出すことができるようです。

于 2012-10-08T22:07:35.603 に答える