如何更新 SQLAlchemy 行条目?

新手上路,请多包涵

假设表有三列: usernamepasswordno_of_logins

当用户尝试登录时,会检查一个带有类似查询的条目

user = User.query.filter_by(username=form.username.data).first()

如果密码匹配,他会继续前进。我想做的是计算用户登录的次数。因此,每当他成功登录时,我想增加 no_of_logins 字段并将其存储回用户表。我不确定如何使用 SqlAlchemy 运行更新查询。

原文由 webminal.org 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 638
2 个回答
user.no_of_logins += 1
session.commit()

原文由 Denis 发布,翻译遵循 CC BY-SA 3.0 许可协议

有几种方法 UPDATE 使用 sqlalchemy

 1) user.no_of_logins += 1
   session.commit()

2) session.query(User).\
       filter(User.username == form.username.data).\
       update({'no_of_logins': User.no_of_logins + 1})
   session.commit()

3) conn = engine.connect()
   stmt = User.update().\
       values(no_of_logins=User.no_of_logins + 1).\
       where(User.username == form.username.data)
   conn.execute(stmt)

4) setattr(user, 'no_of_logins', user.no_of_logins + 1)
   session.commit()

原文由 Nima Soroush 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题