2016-04-22 4 views
0

を更新しながら、検証エラーメッセージを表示するために、私はRailsの:どのように複数のレコードに

@user = Model.update(params[:user].keys,params[:user].values) 

構文以下のレコードが正常に更新されている使用して、レールに複数のレコードを更新しています。しかし、 の検証エラーがある場合は、 @user.errorsで確認できません。

複数のレコードを編集中のレコードのいずれかが原因でエラーに保存されていない場合NoMethodError (undefined method errors' for #<Array:0x6dff140>):

iは、エラーメッセージを表示することができますどのように私はエラーを取得しています?検証プロセスを経て生成されます

おかげで、

答えて

1

すべてのエラーメッセージは、各モデルインスタンスからアクセスできます。あなたの例でupdateメソッドを実行すると、@user変数に更新されたモデルインスタンスの配列が返されます。したがって、配列内のモデルインスタンスを検査して、現在実行している配列自体ではなくエラーがあるかどうかを調べることができます。

-2
@users = Model.update(params[:user].keys,params[:user].values) 
@errors = @users.map(&:errors).select(&:present?) 
関連する問題