在Python SQLAlchemy中使用数据库模型对象,而不会干扰数据库事务

时间:2016-01-28 17:00:24

标签: python flask flask-sqlalchemy

我正在使用SQL Alchemy从数据库中获取一些对象。因为我使用Flask和Jinja中的对象为用户创建网页,所以编辑原始数据库值有时会很方便。例如,这可能意味着交换用户ID以获取清晰的用户名。

当我对我的数据库函数返回的模型对象执行此操作时(请参阅下面的示例),我开始收到错误。我怀疑这与SQLAlchemy'认为'我想要改变数据库行的事实有关,因为我正在编辑Model类/对象的属性。

但是,在这种情况下,我只想将它们用作“平面”仅数据对象。解决这个问题的最佳方法是什么?

if not sql_session.query(Client).count():

    return {"state" : False, "clients" : [] }

else: 

    return {"state" : True, "clients" : sql_session.query(Client).filter().all() }

1 个答案:

答案 0 :(得分:0)