【发布时间】:2018-02-01 09:27:54
【问题描述】:
我有以下代码来更新 Postgres 数据库中的一些条目:
engine = create_engine(Config.SQLALCHEMY_DATABASE_URI)
# Create session
Session = sessionmaker()
Session.configure(bind=engine)
s = Session()
ids_to_update = [185, 186, 187, 188, 189, 190, 191, 192, 194, 195, 196, 197]
for user in models.Users.query.all():
if user.id in ids_to_update:
user.group = 'design_team'
s.commit()
但是在我运行这条语句之后数据库中什么也没有发生? 我也没有从 Postgres 收到任何错误?
【问题讨论】:
-
如果你有一个值列表,为什么不使用
update和sqlalchemy的in_函数呢? -
You do not need to mark questions as "SOLVED" via editing the title,或posting updates/thanks in posts。只需添加您自己的答案。任何额外的东西都可能被视为未来访客的噪音。请参阅:Can I answer my own question?。
-
我需要运行
db.create_all()才能在 Ilja Everilä 的回答起作用之前获得正确的会话,我花了一段时间才弄清楚,所以认为发布整个最终功能块可能会有用
标签: python sqlalchemy flask-sqlalchemy