我有

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

我正试图查询所有按名称分类的书籍

Authors.books.order('name DESC')

但结果是

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

结果显示名称为ASC

有没有办法删除关联中的原始顺序或覆盖它?还是在关系中指定顺序是个坏主意?

使用Rails 3.0.3

推荐答案

使用reorder:

Authors.books.reorder('name DESC')

Ruby-on-rails相关问答推荐

在has_many关系中由两个条件 Select

是否从已转换为字符串的数组中提取符号?

Rails6.1|有没有一种方法可以判断哪些关联已经加入到一个范围中?

如何使用 activerecord activerecord-session_store 在 Rails 应用程序中使用 cookie 值在数据库中查找会话记录

如何在 Arel 中重用单个绑定变量?

URL 中的 Rails slugs - 使用 Active Record Model Post 的 Title 属性而不是 ID

向现有控制器添加操作(Ruby on Rails)

如何在 Windows 中更新 ruby

如果 URL 不存在,请将 http(s) 添加到 URL?

将 cookie 会话存储添加回 Rails API 应用程序

Postgres on Rails 致命:数据库不存在

将 defer 属性添加到 javascript_include_tag Rails

如何按值按降序对哈希进行排序并在 ruby​​ 中输出哈希?

rails structure.sql和schema.rb有什么区别

counter_cache 实现的问题

如何为 rspec 设置 ENV 变量?

Ruby on Rails:如何为 postgresql 编辑 database.yml?

使用 ActiveRecord 获取列名

使用连接的 Ruby on Rails ActiveRecord 查询

没有UTC的Rails 3默认日期时间格式