模糊搜索
这一节要来实现的是模糊搜索功能。依照手册的教程,实现复杂的查询,这里需要先引入一个叫做Op的东东。
varOp=models.Sequelize.Op
引入了以后,定义一个叫做where的空对象,里面保存需要查询的条件。我们这里想对标题做查询,所以先要来接收一下title。如果用户传了title参数,那么我们就给where里添加一个like。like就是像的意思,它是SQL语句中的语法。然后前后各放了一个%,前面有百分号,表示关键词,前面可以有其他文字。后面有百分号,就表示关键词后面,可以跟着其他文字。条件写好了以后,就到findAll里,加上where参数。
router.get(/,asyncfunction(req,res,next){
//搜索
varwhere={};
//模糊查询标题
vartitle=req.query.title;
if(title){
where.title={
[Op.like]:%+title+%
}
}
vararticles=awaitmodels.Article.findAll({
order:[[id,DESC]],
where:where
});
res.json({articles:articles});
});
查询天气
现在来试试看,打开Postman,用GET方式请求