has_oneでhas_manyの最新のレコードを取得する方法
たとえばUser
モデルがhas_many
でArtWork
を持っているときに、最新のArtWork
をhas_one
でも持ちたい場合の実装方法を解説します。
まずhas_many
関係だけの場合はこうなりますね。
参照する名前をlatest_art_work
などのようにモデル名から自動類推が不可能なものに設定したい場合はclass_name
のオプション引数を指定して参照先のモデルを明示的にしましょう。
参考
activerecord - Rails Associations has_one Latest Record - Stack Overflow