如何获取对象并更新sqlalchemy中的多个字段

时间:2015-07-01 07:07:06

标签: python python-2.7 sqlalchemy

我想使用主键获取对象,更新对象并返回它。我看到的示例显示我要更新每个字段。像这样:

blog_post = session.query(BlogPost).get(blog_post_id)
blog_post.name = 'something'
blog_post.author = 'something'
session.commit()

问题是我有多个字段。我不喜欢像上面那样更新每个字段。我知道我可以这样做:

session.query(BlogPost).filter(blog_post_id).update(data)
session.commit() 

但我想要更新的对象,我不想再次查询。理想情况下,我想要这样的事情(以下没有工作,sqlalchemy对象没有update方法):

blog_post = session.query(BlogPost).get(blog_post_id)
blog_post.update(data)
session.commit()

我能做的是,我可以查询和更新。然后,再次获取对象。或者我可以使用for循环并更新每个字段。但有些东西告诉我它应该已经存在于sqlalchemy中。

0 个答案:

没有答案