Open12
ActiveRecordのpersisted?のコードリーディング

ふと、どうやってpersisted?
やnew_record?
の判定が行われているか気になったのでactive_recordのコードを読んでわかったことをつらつらと書いていきます。

ここが実装でnew_recordでもdestroyedでもないときという判定がされている

@new_record
の初期値はどこで決まっているかを追うと、インスタンス作ったときにtrue
をセットしている

次は@destroyed
を追っていく

こうして調べてみると、知らないメソッドを発見できるからいいな。
previously_new_record?
やdestroyed?
とか使ったことない気がする。