Не получается проверить, есть ли запись в базе
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 отрабатывает не правильно