1

ログイン/認証を行っていますが、ユーザーが不適切なデータを入力したときにエラー メッセージを表示したいと考えています。ユーザーが登録しようとしたときに発生するエラーのリストを取得するためのコードは次のとおりです。

flash[:error] = []
resource.errors.each do |error|
  flash[:error].push error
end

そして、ApplicationController の after_filter として、HTTP をフラッシュ エラー配列に設定します。

response.headers['X-Flash-Error'] = flash[:error] unless flash[:error].blank?

私は AJAX を使用しており、.js.erb ファイルを使用して AJAX コールバック (ビジネス上の制約) を処理していないため、テンプレートに渡される典型的なフラッシュ オブジェクトを使用できません。

を使用して JavaScript ajax コールバックでエラーにアクセスしようとするとxhr.getResponseHeader('X-Flash-Error')、コンマで区切られたエラーの文字列が表示されます。明らかに、これらの項目をカンマで分割して配列を簡単に取得できますが、サーバーからヘッダーに配列を単純に渡す方法はありますか?

4

0 に答える 0