Как получить желаемый результат от запроса к базе данных?

Я хочу получить из таблицы Task определённые записи, но получаю неожиданный результат

Функция:

@tasks_r.get('')
async def get_user_tasks(session: AsyncSession = Depends(get_async_session), user: User = Depends(current_user)):
    query = select(Task).where(Task.c.user_id == user.id)
    result = await session.execute(query)
    return result

Результат:

{
  "_row_getter": {},
  "_memoized_keys": [
    "_row_getter"
  ]
}

Искал ответ в интернете, все советуют заменить result на result.all(), но я получаю следующую ошибку:

ValueError: [TypeError('cannot convert dictionary update sequence element #0 to a sequence'), TypeError('vars() argument must have __dict__ attribute')]

Когда я создаю новую запись в таблице, всё работает исправно:

@tasks_r.post('')
async def add_new_user_task(new_task: TaskCreate, session: AsyncSession = Depends(get_async_session)):
    stmt = insert(Task).values(**new_task.dict())
    await session.execute(stmt)
    await session.commit()

Ответы (1 шт):

Автор решения: vendorkont

вместо result.all() в данном случае следует использовать result.mappings().all()

→ Ссылка