AttributeError:'Session'对象没有属性'save'

Fil*_*ano 2 python sqlalchemy

我正在尝试使用SQLAlchemy,但是在行中:

session.save(login)
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

AttributeError: 'Session' object has no attribute 'save'
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

def findOrCreateLogin(self, username, password):
    login = self.findLogin(username)
    if login:
        return login
    else:
        login = DBLogin(username,password)
        session.save(login)
        return login
Run Code Online (Sandbox Code Playgroud)

msv*_*kon 6

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

session.add(login) # Adds a thing to the session.
session.commit() # Commits this session to the database (saves the data).
Run Code Online (Sandbox Code Playgroud)

会话文档中的更多信息

您的代码应如下所示:

def findOrCreateLogin(self, username, password):
    login = self.findLogin(username)
    if login:
        return login
    else:
        login = DBLogin(username,password)
        session.add(login)
        session.commit()
        return login
Run Code Online (Sandbox Code Playgroud)