为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。 【DM版本】:dm8 【操作系统】:win10 【CPU】: 【问题描述】*: 通过flask+sqlalchemy结合,可以全部查询,但是不能过滤查询,查询之后报这个错误,,无法使用条件查询
全部查询可以查询成功
过滤查询,会失败
只用filter也会失败
可以参考下
注意需要用2.0版本的sqlalchemy
from flask import Flask, Response, json from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) # 设置数据库链接地址 app.config['SQLALCHEMY_DATABASE_URI'] = 'dm+dmPython://SYSDBA:SYSDBA@192.168.186.3:5239' # 设置显示底层执行的sql语句 app.config['SQLALCHEMY_ECHO'] = True app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] =True # 初始化组件对象,关联flask应用 db = SQLAlchemy(app) # 构建模型类 class Buscar(db.Model): # 设置表名,表名默认为类名小写 __tablename__ = 'bus_car' carnumber = db.Column(db.String(255), primary_key=True) cartype = db.Column(db.String(255)) color = db.Column(db.String(255)) price = db.Column(db.Numeric(19, 4)) rentprice = db.Column(db.Numeric(19, 4)) deposit = db.Column(db.Numeric(19, 4)) isrenting = db.Column(db.Integer) description = db.Column(db.String(255)) carimg = db.Column(db.String(255)) createtime = db.Column(db.Date) def __repr__(self): # 自定义 交互模式 & print() 的对象打印 return "(%s, %s)" % (self.carnumber, self.cartype) @app.route("/query_all") def query_all(): # 查询所有用户数据, 返回User列表, data = Buscar.query.all() response_data = dict() for item in data: response_data['carnumber']=item.carnumber response_data['cartype'] =item.cartype return Response(json.dumps(response_data), mimetype='application/json') @app.route("/query_filter") def query_filter(): # 查询所有用户数据, 返回User列表, data = Buscar.query.filter_by(carnumber='赣G1563R9').first() response_data = dict() response_data['carnumber'] = data.carnumber response_data['cartype'] = data.cartype return Response(json.dumps(response_data), mimetype='application/json') if __name__ == '__main__': app.run(host="192.168.186.3", port=5881, debug=True)
可以参考下
注意需要用2.0版本的sqlalchemy

