
[code]

    Post has_many Comment
    
    @post = Post.find(xxx)
    @post.comments = post.comments.custom_order
    @post.comments
    
[/code]

`@post.comments` で comments がソートされた状態にしたいのですが、どうすればよいのでしょうか？


CC BY-SA 4.0
2018-05-11T13:36:30.047
43921
2018-05-11T13:49:49.803
12896
question
ruby-on-rails rails-activerecord
rails アソシエーション先の並べ替えを維持したい


`has_many`
に[scopeを付け](http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-
i-has_many)られます。

[code]

    has_many :comments, -> { order('created_at DESC') }
    
[/code]

として

[code]

    post = Post.find(1)
    puts post.comments.to_sql
    # SELECT "comments".* FROM "comments" WHERE "comments"."post_id" = 1 ORDER BY created_at DESC
    
[/code]


CC BY-SA 4.0
2018-05-11T13:49:49.803
43922
2018-05-11T13:49:49.803
17037
43921
answer