当前位置:Gxlcms > 数据库问题 > 【flask_sqlalchemy】模糊查询

【flask_sqlalchemy】模糊查询

时间:2021-07-01 10:21:17 帮助过:2人阅读

这2个方法的主要区别如下:

模块语法><(大于和小于)查询and_和or_查询
filter_by() 直接用属性名,比较用= 不支持 不支持
filter() 用类名.属性名,比较用== 支持 支持

 

若要进行模糊查询,需要使用filter()方法

查询方式:

objs = db_model.query.filter(db_model.api_url.like(%{keyword}%.format(keyword=keyword))).all()

写成函数:

    def update_like(self,keyword):
        ‘‘‘模糊查询‘‘‘
        objs = self.db_model.query.filter(self.db_model.api_url.like(%{keyword}%.format(keyword=keyword))).all()
        obj_num = len(objs)
        for obj in objs:
            if obj.unusual==True:
                obj_num=obj_num-1
            else:
                obj.unusual=True
        db.session.commit()

        return %d条记录被更新%obj_num

 

filter()方法支持 like,in ,not in ,and or查询方式

具体使用方法:

技术图片

 

参考文档:

SQLAlchemy中filter_by()和filter()的用法区别

 

【flask_sqlalchemy】模糊查询

标签:div   image   obj   else   tab   www   session   for   ssi   

人气教程排行