私は@foo.update
を呼び出し、更新中の属性の中にfoo
のモデルクラスの書き込みメソッド(def attribute=
)を呼び出して、条件付きで更新全体を失敗させたい。私はそこに何を入れることができますか?私はerrors[:base]
を使ってみましたが、save
は失敗しません。 validates
を使用することはできません。属性が保存される前に別のものに変換されるからです。手作業で#update_attributesをRailsに保存する
def attribute=(attr)
if bar
# code to fail entire db save
end
end
どのようにエラー[:base]を使用しようとしましたか? –
エラーを発生させて、オプションを保存して外に出ようとしていますか? –
@ruby_newbie上記の 'if bar'条件の中に' errors [:base] << "failed"で配置しました。 – stackjlei