Концепция магазина телеграмм, есть 2 таблицы: products и groups (ниже будет DDL таблиц). Я сделал вывод групп товаров из таблицы, но не могу сделать так, чтобы при нажатии на inline-кнопку с группой выводились товары.
DDL таблицы products:
CREATE TABLE product (
id INTEGER PRIMARY KEY,
name TEXT,
description TEXT,
group_number INTEGER REFERENCES groups (id)
);
DDL таблицы groups:
CREATE TABLE groups (
id INTEGER PRIMARY KEY,
name TEXT
);
Код, где используется таблица products:
1. SQL запрос:
def get_products(self, category_id):
with self.connection:
result = self.cursor.execute('SELECT * FROM `product` WHERE `group_number` = ?', (category_id,)).fetchall()
return result
2. Использование запроса:
@router.callback_query(F.data.startswith('category_'))
async def category_(callback : CallbackQuery):
products_kb = InlineKeyboardBuilder()
category_id = callback.data.split('_')[1]
products = db.get_products(category_id)
for product in products:
products_kb.add(InlineKeyboardButton(text=product, callback_data=f'product_{product}'))
await callback.message.answer(f'Товары по выбранной категории:', reply_markup=products_kb.adjust(2).as_markup())
await callback.answer('')
Код ошибок никаких не выдает, просто при нажатии на кнопку с группой пишет "Товары по выбранной категории:".
В таблицах все заполнено.