如何解决从整个AcitveAdmin过滤的集合中访问数据
试图解决此问题,但运气不佳。现在,我正在使用ActiveAdmin和Im尝试在我的仪表板页面的顶部显示当前收藏集中售出的图书总数。只是一点点背景;我的数据库条目是“订单”,其中包含许多列,其中之一是number_books。我发现可以对分页排序后的集合的第一页中的number_books进行计数,并且我找到了一种对数据库中Order的每个实例进行所有number_books计数的方法,但我无法进行统计整个当前过滤的集合,如使用以下结果,将仅得出分页集合第一页的总和。
"Total Books on page: #{collection.pluck(:number_books).reduce(:+)}"
有人知道访问整个过滤集合的方法吗?我为此工作的人不需要浏览每一页并在不需要的情况下手动计算每一页中的书籍数量,因为可能有20、30或40页的记录他们正在尝试对订单进行排序的方式在当前集合中进行了排序。
感谢您的帮助!
解决方法
以下代码解决了我的问题。
Order.ransack(params[:q]).result.map{|order| order.number_books}.reduce(:+)
,
尝试:
finds
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。