У меня есть таблица с пользователями. В одном из столбцов записывается статус регистрации: Зарегистрирован/Не зарегистрирован. Я пытаюсь посчитать количество зарегистрированных.
async def count_registration_status():
_session_maker: sessionmaker = data['session_maker']
async with _session_maker() as session:
async with session.begin():
result = await session.execute(func.count(User.registration_status).filter(User.registration_status == 'Зарегистрирован'))
registration_status = result.scalar()
return registration_status
Эту функцию использую так:
@router.callback_query(F.data == 'statistics_but_pressed')
async def show_stat(callback: CallbackQuery):
_count_registration_status = await count_registration_status()
await callback.message.edit_text(text='Статистика проекта:\n\n'
'Сборов: \n\n'
'Пользователей (прошедших '
f'регистрацию):{_count_registration_status}'
'\n\nВне клуба:\nЛайт:\nСтандарт:\n'
'Макс:\nАмбассадоров:\n\nАктивных:\n'
'за неделю:\nза месяц:\n\nСобрано'
' средств:\nза неделю\nза месяц:',
reply_markup=admin_panel_menu_kb)
Однако получаю следующую ошибку:
sqlalchemy.exc.ArgumentError: Executable SQL or text() construct expected, got .