在Rails tutorial中,它说我可以简单地使用.order("something")
,它会工作。然而,当我写Course.order("name DESC")
我得到查询:在Rails中添加自己的订单
SELECT "courses".* FROM "courses" ORDER BY name ASC, name DESC
当我真正想要的(请注意,它只是通过name DESC
订购):
SELECT "courses".* FROM "courses" ORDER BY name DESC
我怎么会迫使它通过?
查看您的应用/ models/order.rb。你有什么叫做“default_scope”? – 2013-03-01 04:28:22
是的,我如何覆盖它?它说'default_scope:order =>'name ASC'' – Hengjie 2013-03-01 04:29:12
Yuck! :-)那么你可以使用“with_exclusive_scope”覆盖它。但最好不要首先使用default_scope。 – 2013-03-01 04:32:28