Как в aiogram сделать ограниченное число ввода определенной команды?
Пишу бота на aiogram с привязкой к БД PostgreSQL.
Суть вопроса:
В боте есть 2 команды: ("/start", "/menu")
При нажатии на /start пользователь добавляется в БД PostgreSQL. (Таблица имеет вид: ID, full_name, user_name, telegram_id, quantity). quantity = 10 по дефолту.
При нажатии на /menu - выводится обычный текст.
Как сделать так, чтобы при нажатии на /test - quantity уменьшался каждый раз на 1? Т.е. 9,8,7... А когда quantity становился 0, то выводилось сообщение о том, что лимит исчерпан.
В обработчике команды /test делать SELECT quantity для отправителя.
Если ничего не найдено, сообщить о необходимости регистрации через /start.
Если вернулось положительное значение, выполнить запрос вида UPDATE, а потом сделать что требуется.
Если вернулся ноль, сообщить об исчерпании лимита.
В чём конкретно проблемы?
1. не кидай код скриншотами, есть же кнопка </>
2. Не вполне ясно, зачем тебе передавать quantity в запрос? Ведь можно выполнить UPDATE users SET quantity = quantity - 1 WHERE telegram_id = $1
3. Ну и как следствие предыдущего... у тебя в определении minus_quantity в параметрах идёт сначала quantity, потом id, а в вызове - наоборот.