如何只排序数组中的一个元素?

时间:2012-07-24 11:21:43

标签: ruby-on-rails arrays ruby-on-rails-3

我正在使用Ruby on Rails 3.2.2,我想命令{em>只有一个元素存在于Array中,因为执行ActiveRecord::Relation。也就是说,我有ActiveRecord::Relation返回以下Array

[
  #<Article id: 1, title: "Sample title 1", content: "Sample content 1">,
  #<Article id: 2, title: "Sample title 2", content: "Sample content 2">,
  #<Article id: 3, title: "Sample title 3", content: "Sample content 3">,
  #<Article id: 4, title: "Sample title 4", content: "Sample content 4">,
  #<Article id: 5, title: "Sample title 5", content: "Sample content 5">,
  ...
]

我想将Article对象id 4和title“示例标题4”“放”/“订购”到第一个位置Array中,以便可以将相关的对象数据输出为视图文件中的第一个元素。

如何才能做到这一点?

2 个答案:

答案 0 :(得分:1)

只需使用order,它就会从你的订单生成sql,它会评估为true或fals条件,这会首先带来你想要的元素:

Article.order('id = 4, title = "Sample title 4"')

相当硬编码,但它确实有效。

答案 1 :(得分:0)

我想它应该是

Article.order("id = 4 DESC")