Реализация корзины в Telegram bot Python (aiogram)
Подскажите, как и с помощью чего можно реализовать корзину на Aiogram'e?Знаю,что 100% нужна база данных( в боте используется sqlite3) , но я не могу придумать как это всё написать.
Ответы (1 шт):
Автор решения: biflé
→ Ссылка
Можно сделать примерно так:
Есть список товаров (скажем, в переменной)
items={'tort1':{'name':'Торт первой модели', 'price':10}}
Есть база данных - 'корзина'
CREATE TABLE IF NOT EXISTS `korzina` (
`user_id` VARCHAR(99999) NULL,
`item` TEXT DEFAULT NULL)
Человек добавляет предмет в корзину:
cursor.execute('INSERT INTO `korzina` (?,?)', (user_id, item))
cursor.commit()
Как удаляем из корзины:
cursor.execute('DELETE FROM `korzina` WHERE `user_id`=?', (user_id,))
cursor.commit()
Берем список предметов:
SELECT * FROM `korzina` WHERE `user_id` = ...
Все! Мы получили список предметов!
Список будет в формате: ((1234, 'tort1'), (1234, 'tort2'))
Второе значение - название товара из списка товаров ранее - по нему можем из списка достать всю информацию. Если что-то непонятно - пиши - буду рад помочь)
P.S. Тут все под sqlite3