M.A*_*pon 0 node.js sequelize.js
我从前端发送 2 种类型的参数到Sequelize
第一个参数: {}
第二个参数: {page: '1', start: '0', limit: '30' }
我的续集查询:
myTable.findAndCountAll({
.....
offset: (req.query.start) ? parseInt(req.query.start) : 0,
limit: (req.query.limit) ? parseInt(req.query.limit) : 30
.........
Run Code Online (Sandbox Code Playgroud)
对于第一个参数,默认情况下将限制设置为 30
对于第二个参数,它设置限制作为参数发送。
我的问题是,我需要设置第一个参数的默认限制以返回所有行。
尝试设置null默认值,例如limit: (req.query.limit) ? parseInt(req.query.limit) : null将默认限制设置为10000000000000,这是我不想要的。
如果有任何具体的方法来做到这一点可能会有所帮助。
由于 Sequelize 没有为此提供内置功能,该问题的解决方案之一是:
let limits = {};
if(req.query.limit){
limits = {
offset: (req.query.start) ? parseInt(req.query.start) : 0,
limit: parseInt(req.query.limit)
}
}
myTable.findAndCountAll({
.....
...limits , // <---- here three dots are ES6 syntax , so don't ignore that)
.....
});
Run Code Online (Sandbox Code Playgroud)
欲了解更多详细信息:阅读
| 归档时间: |
|
| 查看次数: |
5302 次 |
| 最近记录: |