Я новичок в sqlalchemy.
Я пытался выполнить простую вставку.
Но получаю ошибку InvalidRequestError.
sqlalchemy.exc.InvalidRequestError: не удалось обновить экземпляр ''
Похоже, что-то не так с обновить().
Любой совет будет полезен.
Ниже мой код.
@router.post("/{user_id}")
async def block(
user_id: int,
session: Session = Depends(get_db_session),
user: UserDB = Depends(get_current_user)):
block = BlockCreate(blocker=user.id, blocked=user_id)
db_block = db_models.Block(**block.dict())
session.add(db_block)
session.commit()
session.refresh(db_block)
return {"block": db_block}
class BlockBase(BaseModel):
blocker: int
blocked: int
class BlockCreate(BlockBase):
pass
Настройка БД
class Block(Base):
__tablename__ = "block"
id = Column(Integer, primary_key=True, autoincrement=True)
blocker = Column(Integer, ForeignKey("user.id"), nullable=False, primary_key=True)
blocked = Column(Integer, ForeignKey("user.id"), nullable=False, primary_key=True)
Подробнее здесь: https://stackoverflow.com/questions/752 ... sh-instanc
FastApi Sqlalchemy sqlalchemy.exc.InvalidRequestError: не удалось обновить экземпляр ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение