是否有函数从 db ex 更新数据:
user = User()
user.name = 'Jonh'
session.add(user)
session.commit()
session.foo(user)
print(user.id) # now we have id of user
ps:我正在寻找 foo() 函数
我尝试使用谷歌并在文档中搜索,但没有找到解决方案
不,不幸的是,没有任何现有方法可以实现您想要实现的目标。但是您可以通过更新对象“用户”及其身份(ID)来实现相同的目标:
from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine
engine = create_engine('sqlite:///users_database.db')
Session = sessionmaker(bind=engine)
session = Session()
class User(Base):
__tablename__ = 'users_table'
id = Column(Integer, primary_key=True)
name = Column(String)
user = User(name='John')
session.add(user)
session.commit()
session.refresh(user)
print(user.id)
您可以使用内置的refresh()方法从您正在处理的数据库中重新加载对象状态。