ActiveRecord の has_one オプションの注意点

orderオプションと build_xxx を呼んだときの動作と readonly オプションについて
0
馬美肉 @chiastolite

ActiveRecordで ためしにこんなhas_oneを定義したら動いちゃってるんだけどhas_oneってこんなの使い方していいんだろうか… gist.github.com/chiastolite/4b…

2015-07-02 23:07:12
suginoy @suginoy

@chiastolite 以前からhas_oneにorderオプションありましたよ

2015-07-02 23:11:27
馬美肉 @chiastolite

@suginoy お、んじゃ問題なしなんすね。あざす!

2015-07-02 23:21:17
suginoy @suginoy

@chiastolite has_oneには1つ注意点があって、その例だと、entry.build_latest_message を呼ぶと既存のentryが吹っ飛ぶUPDATE文が発行されると思います

2015-07-02 23:24:14
馬美肉 @chiastolite

@suginoy うぉ、恐ろしい…… readonlyはっと…3で廃止されてるんすね

2015-07-02 23:28:39
suginoy @suginoy

@chiastolite 使ったことないですけどAPI見ると `has_one :boss, -> { readonly }` っていう形なら使えるのかも!? api.rubyonrails.org/classes/Active…

2015-07-02 23:40:49
馬美肉 @chiastolite

@suginoy お、readonlyつけたらbuildしたら例外吐きますね。これでよさそう!

2015-07-02 23:44:15