Вот модели:
class ItemInBasket(Base):
__tablename__ = 'itemsinbaskets'
id: Mapped[int] = mapped_column(primary_key=True)
category: Mapped[str] = mapped_column(String(16))
order_id: Mapped[str] = mapped_column(ForeignKey('orders.id', ondelete='CASCADE'))
class Order(Base):
__tablename__ = 'orders'
id: Mapped[int] = mapped_column(primary_key=True)
user_name: Mapped[str] = mapped_column(String(256))
tg_id: Mapped[BigInteger] = mapped_column(BigInteger)
check_image: Mapped[str] = mapped_column(String(1024), nullable=True)
created_at: Mapped[str] = mapped_column(String(128), nullable=True)
Вот запрос:
#Удаляем и сразу создаём
async def create_order(user_name: str, tg_id: int):
async with async_session() as session:
await session.execute(delete(Order).where(Order.tg_id == tg_id))
await session.commit()
async with async_session() as session:
session.add(Order(user_name=user_name, tg_id=tg_id, check_image=None, created_at=None))
await session.commit()
Вот почему при этом запросе у меня всё равно все элементы ItemInBasket не удаляются, а остаются на прежнем месте, даже когда execute использую?