[英]flask sqlalchemy doesn't update rows
我正在使用带有本地托管 postgresql 的 Flask-SQLAlchemy,并且我有此代码,我应该在他登录后更新数据库中的用户数据
user_id = current_user.get_id()
print(f"\n\n user_id: {user_id}\n\n") #1--->
x = users.query.filter_by(id=user_id).first()
x.sid = request.sid
db.session.commit()
print(f'\n\n user_object.sid:{x.sid} , request.sid:{request.sid} \n\n') #2 --->
#1: userid:1
#2: x.sid:QKfGvdsL-HGUM-FHHYF, request.sid:QKfGvdsL-HGUM-FHHYF
但是当我稍后查看 pgadmin4 或请求 x.sid 的值时,它总是“空”
我到处看了看,似乎每个人都建议我用同样的方式编写代码。
值得一提:
sid column
已使用 flask.migrate 添加,尚未使用表创建。db.session.add(x)
但它一直说数据信息已经存在你可以试试:
db.session.merge(x)
db.session.commit()
此代码创建一个新行,如果它不存在,则更新现有行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.