【问题标题】:sessionmaker object has no attribute addsessionmaker 对象没有添加属性
【发布时间】:2022-12-17 19:37:53
【问题描述】:

我正在尝试将数据插入 postgresql 服务器,当我尝试将数据添加到 SQLalchemy 会话时,我收到错误“sessionmaker 对象没有属性添加”

from sqlalchemy.orm import Session
def create_new_user(user: UserCreate, db: Session):
    user=User(username= user.username,
        email=user.email,
        hashed_password= Hasher.get_password_hash(user.password),
        is_active=True,
        is_superuser=False
        )
    db.add(user)
    db.commit()
    db.refresh(user)
    return user

【问题讨论】:

  • Session 需要是一个实例 -> Session()

标签: python postgresql fastapi


【解决方案1】:

查看有关如何构建会话的文档。我使用 scoped_session 模式(通常适用于 Web 应用程序;还有其他模式)。

这是我的会话初始化的样子:

from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker

engine = create_engine("sqlite://")
Session = scoped_session(sessionmaker(bind=engine))

它使用 scoped_session 模式(通常适用于网络应用程序);还有其他模式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 2018-03-18
    • 1970-01-01
    相关资源
    最近更新 更多