タグ

2017年11月21日のブックマーク (1件)

  • Rails: 親子まとめてのバリデーションは削除時に注意 - Qiita

    Railsでは、親テーブルの1行に子テーブルの複数行が対応するhas_manyの関係を簡単に作れます。入力などの補助的な機能も各種整っていますが、バリデーションをかけようとした時に失敗したところがありました。 TL; DR accept_nested_attributes_forで削除しようとした子要素も、バリデーション時点ではまだ削除されていない そのため、モデルのCollectionにも入ったまま marked_for_destruction?でチェック可能 親子セットでのデータハンドリング 「1の記事に複数のコメントが付く」ような、一対多の関係はWebアプリを作っていれば至るところに発生します。Railsでは、has_manyで結ばれた関係について、accept_nested_attributes_forを行うことで、親についてのフォーム送信で子の作成・変更・削除などを一気に行って

    Rails: 親子まとめてのバリデーションは削除時に注意 - Qiita
    aquarla
    aquarla 2017/11/21