Подтвердить что ты не робот

Как переопределить: порядок, определенный в has_many

У меня

class Authors 
has_many :books, :order => 'name ASC'

Я пытаюсь запросить все книги, отсортированные по имени DESC

Authors.books.order('name DESC')

но результат

SELECT * FROM .... ORDER BY name ASC, name DESC

и результаты возвращаются с отсортированным именем ASC

Есть ли способ удалить исходный порядок в ассоциации или переопределить его? Или задает порядок в отношении плохая идея?

с использованием Rails 3.0.3

4b9b3361

Ответ 1

Authors.books.reorder('name DESC')

Ответ 2

.reorder() устарел в Rails 3.0.3 в пользу .except(:order).order()

Поэтому используйте это:

Authors.books.except(:order).order('name DESC')

Ответ 3

Author.first.books.reverse_order