こんにちは!kossyです!
さて、今回は、Railsでアソシエーションを組むときに、オプションとして設定できる
「dependent: :nullify」の使い方をブログに残してみたいと思います。
定義は簡単
User has_many Posts
という関連があるとします。
その時のアソシエーションの定義としては、
has_many :posts
と書くと思います。
ここで、「Userのデータを削除してもUserが持っていたPostsの情報は残したい」
というときに使うのが、「dependent: :nullify」です。
has_many :posts, dependent: :nullify
こうすることによって、Userの削除時に、Userが持っていたPostsのuser_idがnullの状態でDBに残ります。
関連先のデータを残したいシチュエーションがあれば使えそうです。