AttributeError:“Session”对象没有属性“save”

2024-09-28 05:16:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用SQLAlchemy,但是在这行代码中:

session.save(login)

我得到了这个错误:

^{pr2}$

这是我的代码:

def findOrCreateLogin(self, username, password):
    login = self.findLogin(username)
    if login:
        return login
    else:
        login = DBLogin(username,password)
        session.save(login)
        return login

Tags: 代码selfreturnifsqlalchemysessionsavedef
2条回答

实际上,session.save曾经存在于旧版本的SQLAlchemy中。在

因此,如果其他人正在寻找实现insert or update类功能的新方法,您应该使用merge

# if the keys ( primary etc .. ) matching an existing row - it will be updated
# if not - it will be "inserted" as new

new_obj = session.merge(obj)
session.commit()

^{pr2}$

SQLAlchemy会话没有.save()方法。您可以通过以下方式向SQLAlchemy会话添加内容:

session.add(login) # Adds a thing to the session.
session.commit() # Commits this session to the database (saves the data).

更多信息in the session docs

您的代码应该如下所示:

^{pr2}$

相关问题 更多 >

    热门问题