你好,我有使用Rails 3.2和排序的问题。
希望通过现场订购集合时,打电话时.last
ActiveRecord
行为古怪...
>> User.order("FIELD(id, '1')")
User Load (0.4ms) SELECT `users`.* FROM `users` ORDER BY FIELD(id, '1')
=> []
>> User.order("FIELD(id, '1')").first
User Load (0.4ms) SELECT `users`.* FROM `users` ORDER BY FIELD(id, '1') LIMIT 1
=> nil
>> User.order("FIELD(id, '1')").last
User Load (0.3ms) SELECT `users`.* FROM `users` ORDER BY FIELD(id DESC, '1') DESC LIMIT 1
Mysql2::Error: You have an error in your SQL syntax;
正如你所看到的最后调用的关系添加DESC
的两倍,但它应该只把它整个后ORDER BY FIELD
,而不是在括号内..
不要任何人有一个想法,怎么办呢?
谢谢!