flask_sqlalchemy的查詢方法有filter()和filter_()sql
這2個方法的主要區別以下:flask
模塊 | 語法 | ><(大於和小於)查詢 | and_和or_查詢 |
---|---|---|---|
filter_by() | 直接用屬性名,比較用= | 不支持 | 不支持 |
filter() | 用類名.屬性名,比較用== | 支持 | 支持 |
若要進行模糊查詢,須要使用filter()方法api
查詢方式:session
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查詢方式url
具體使用方法:spa
參考文檔:code