民宿搜索接口
来源:10-4 编写搜索民宿接口,与前端联调

_驺虞
2020-12-27
第一次接触后端,问一个小白问题。。。。。
async search(params) {
return this.run(async (ctx, app) => {
const { lte, gte, like } = app.Sequelize.Op;
const where = {
cityCode: Array.isArray(params.code) ? params.code[0] : params.code,
startTime: {
[lte]: params.startTime
},
endTime: {
[gte]: params.endTime
},
name: {
[like]: '%' + params.houseName + '%'
}
};
if (!params.houseName) {
delete where.name;
}
const result = await ctx.model.House.findAll({
...this.commonAttr(app),
limit: 8,
offset: (params.pageNum - 1) * params.pageSize,
where
});
return result;
});
}
搜索民宿时,findAll为什么能够根据params.pageSize的不同 返回不同分页的数据?
写回答
1回答
-
sequelize findAll方法封装了mysql的分页查询语句,limit 与offset。不是根据pageSize查询的,是将pageSize和pageNum转化成offset进行查询的。
012020-12-28
相似问题