アソシエーション時の下位モデルにデフォルトオーダーを設定しても反映されないのでメモしておきます。
DBの構成は以下の通りです。
—–
usersテーブル
カラム名 | データ型 | 外部キー |
id | unsigned int | |
name | varchar(255) |
commentsテーブル
カラム名 | データ型 | 外部キー |
id | unsigned int | |
user_id | unsigned int | users.id |
comment | text | |
order | unsigned int |
—–
Commentモデルで
のように指定すると、
でComment.orderの昇順でレコードを取得できます。
しかし、Userモデルに
のようにアソシエーションを設定して、
をしてもComment.orderの昇順にはなりません。
アソシエーションの下位モデルでオーダーを設定するには
Userモデルに
のようにオーダーを指定する必要があります。
何も指定しなければCommentのデフォルトオーダーが有効にならないかなーという淡い期待をしていたんですがダメでした。