ruby-on-rails - 你能做一个 :order in ruby after a find?

标签 ruby-on-rails ruby activerecord

是否可以在 ruby​​/rails 中进行查找后对结果集进行排序?例如,是否可以做这样的事情

警告:不起作用

if type == 1
  @items = mycompany.items
else
  @items = myhome.items
end

@items = @items :order => "created_at"

我认为这样的事情应该是可能的,但我对 RoR 还是很陌生,似乎无法在谷歌上找到任何东西。

最佳答案

您应该能够执行以下操作之一:

访问时排序:

if type == 1
  @items = mycompany.items(:order => 'created_at')
else
  @items = myhome.items(:order => 'created_at')
end

访问后排序:

@items.sort{|a,b| a.created_at <=> b.created_at}

关于ruby-on-rails - 你能做一个 :order in ruby after a find?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1032715/

相关文章:

ruby - 将电子邮件注入(inject) Kafka 或任何其他消息队列

ruby-on-rails - 在带有 Paper_trail 的类上使用具有特定时间版本的 where 方法

ruby-on-rails - RSpec + capybara : redirect_to external page sends me back to root_path

ruby-on-rails - Action Pack 请求周期内的 Rails 连接池 相同的连接

ruby-on-rails - 使用基于已安装引擎的 url_for 获取基于约束的 url

ruby-on-rails - 创建记录似乎没有持久化到测试数据库,rspec,factory_girl_rails

ruby-on-rails - 在多个方法中添加相同的代码

ruby-on-rails - rails : what's wrong with this multiple join with conditions on the associations?

sql - 根据 ActiveRecord 关联和值获取对象集合

ruby-on-rails - 带有 Rails 的 AJAX 设计表单不更新数据