node.js - 如何为nodejs正确实现分页?
问题描述
我使用 ORM sequelize 和 postgresql 数据库。我想实现分页。
使用 MongoDB 数据库,以这种方式执行分页。
module.exports.getBySprOilfieldId = async function (req, res) {
try {
const query = {
where: {
spr_oilfields_id: req.params.spr_oilfields_id
}
}
const sprwellplatforms = await SprWellplatforms.findAll(query)
.skip(+req.query.offset)
.limit(+req.query.limit)
res.status(200).json(sprwellplatforms)
} catch(e) {
errorHandler(res, e)
}
}
但是由于我使用的是postgresql数据库,所以出现了这样的错误。
SprWellplatforms.findAll(...).skip 不是函数
SprWellplatforms.findAll(...).limit 不是函数
如何修复它们?
解决方案
offset
和limit
值应该在传递给的选项上设置,如Pagination/LimitingfindAll()
的文档中所示。
const query = {
where: {
spr_oilfields_id: req.params.spr_oilfields_id
},
offset: +req.query.offset,
limit: +req.query.limit,
};
const sprwellplatforms = await SprWellplatforms.findAll(query)
推荐阅读
- php - PHP Imagick 函数添加标签
- javascript - node.js 无法从相对路径中找到模块
- python - 具有多个模型的自定义训练循环通过
- apache - 使用 .htaccess [#Q2.] 修改 URL
- javascript - 如何在 Handlebars 和 Puppeteer 中使用自定义字体?
- sql - 查找要删除的引用不存在的数据库的 SQL 作业
- ant - PITest 在 ant 中跳过测试
- c++ - 使用另一个类“Student_info”的数据类型初始化模板类“Stack”的对象时出现非法结构操作错误
- scala - Stream-Static Join:如何定期刷新(非持久化/持久化)静态数据框
- windows - 罗技 lua 可靠睡眠