ruby-on-rails - 在循环中查找数组的值

标签 ruby-on-rails ruby ruby-on-rails-3.2

这行得通!但是如果我的 JSON 返回 200 个程序,这也将打印所有这 200 个程序。但是我想以一种方式更改辅助方法,使其只返回他们的ercentage最高的TOP 5。

如何修改我的辅助方法来实现这一点?

P.S:我知道这样做的最好和专业的方法可能是在模型文件或实际创建 JSON 的 ActiveRecord 查询接口(interface)中使用“范围”和“顺序”等...但这是目前的情况离我远点!想通过婴儿步骤完成这件事......以后......

最佳答案

尝试以下操作

def patient_counts(program)
  sorted = program.patient_counts.sort { |a, b| b.money <=> a.money }
  sorted[0..4]
end

更新:限制为仅从数据库中获取 5 条记录

def patient_counts(program)
  program.registry_patient_counts.limit(5).order('patient_count_percentage DESC')
end

关于ruby-on-rails - 在循环中查找数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15182128/

相关文章:

ruby-on-rails - 将自定义类放在 Rails 应用程序的什么位置以便它们在全局范围内可用?

heroku - 如何在 Rails 中使用 Heroku 和 Sendgrid 配置设计电子邮件?

ruby-on-rails - 关于 Rails 中的 i18n 和 Rails 中的网站反转

使用规范进行测试,railstutorial 第 3 章中的 capybara 不起作用(have_selector ('title',:text => ' | Home' ))

ruby-on-rails - 如何在不需要参数的情况下创建自己的 Rails 生成器?

ruby-on-rails - ActiveRecord - 查找其关联计数为 0 的记录

mysql - 如何将 Time.zone 设置为 UTC 并保持这种状态?

ruby - 需要和不需要 ActiveSupport 的单元测试

ruby-on-rails - rails : Subclass not registering as instance of parent class

ruby - Emacs ruby​​ 模式 if 表达式缩进