Dan*_*ell 3 sql activerecord ruby-on-rails
我有一个ActiveRecord User对象集合。User有一个属性,engagement它是一个浮点数。假设users = User.all.order(engagement: :desc)返回1000条记录并且current_user是其中的一个User对象users,我想知道其中的位置或索引current_user,users而无需再次查询数据库或使用each_with_index慢速的枚举器方法。这可能吗?
收集ids并找到索引current_user.id
index = User.all.order(engagement: :desc).map(&:id).index(current_user.id)
Run Code Online (Sandbox Code Playgroud)
您可以选择ID以避开地图
index = User.order(engagement: :desc).pluck(:id).index(current_user.id)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2751 次 |
| 最近记录: |