ruby-on-rails - 使用 pagey gem 对哈希进行分页
问题描述
我有一个Products表,用于存储商店的产品,产品的条目之一是vendor。所以多个产品将有相同的供应商(即耐克)。我还有一个包含产品的销售表。我想计算每个产品供应商的销售数量。
我的代码将返回一个哈希,其中键是供应商,值是销售数量,如下所示:
{
"Adidas":40,
"Nike":34,
"Reebok":23,
...
}
这样做的问题是供应商的数量可能会变得很大,我只想一次显示 50 个。在这个哈希上实现分页的最佳方法是什么?我正在使用带有反应前端的 ruby on rails (react on rails)。与其他分页宝石相比,我更喜欢pagy
根据其性能使用宝石。
解决方案
根据文档https://ddnexus.github.io/pagy/extras/array,您可以使用 pagy_array 对数组进行分页,如下所示:
@pagy_a, @items = pagy_array(hash.to_a, items: 50)
在此之前你应该取消注释
require 'pagy/extras/array'
在 pagey.rb 文件中,并添加
include Pagy::Backend
到你的控制器
希望对你有帮助
推荐阅读
- php - 如何更改控制台日志?
- python - 定义一个写入文件的函数
- javascript - MongoDB 和 Nest.js:为集合定义自定义名称
- javascript - React Native 将图像从 firebase 存储下载到我的资产文件夹
- python - 编写一个类函数,该函数将构建一个字符串,该字符串包含有关类对象的所有信息
- javascript - 打字稿可以从 React 中的联合中分配基于索引的泛型类型吗?
- c++ - 随机播放 C++ 中的字符串列表
- python - 用于连接列表中句子的 Python 函数
- python - 如何解决 VB 代码中 Pygame 的问题?
- angular - 我无法显示我的产品 Angular Firebase 错误界面是“未定义”