@shmelfrol
Системный администратор, веб-программист junior

Как проверить есть ли запись в базе?

Не получается проверить, есть ли запись в базе
class RoleDal:
    def __init__(self, db_session: AsyncSession):
        self.db_session = db_session

    async def create_role(self, name: str) -> Role:
        new_role = Role(name=name)
        role_exist = await self.get_role_by_name(name)
        print("!!!!!!!!!!!!!!!!!!!!!!!", role_exist)
        if role_exist:
            raise HTTPException(status_code=404, detail="Role already exist")
        else:
            try:
                self.db_session.add(new_role)
                await self.db_session.commit()
                await self.db_session.refresh(new_role)
                return new_role
            except:
                print("Something errrooorrrr")
                # await self.db_session.rollback()
            print("Role does not exist!!!!!!!!!!!!!!!!!!!!!")
   
 async def get_role_by_name(self, role_name: str) -> Role:
        q = select(Role).where(Role.name == role_name)
        result = await self.db_session.execute(q)
        role = result.scalars()
        return role

Не пониманию как посмотреть что идёт из базы - print(role) не распечатывает объект, и соответственно if role_exist отрабатывает не правильно
  • Вопрос задан
  • 78 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы