Почему не ловят хендлеры в моём коде?
Не ловят два хендлера, которые я пометила комментариями
from aiogram import Dispatcher, types, Router, F
from database.BotDB import botdb
from aiogram.dispatcher.fsm.context import FSMContext
from aiogram.dispatcher.filters.state import StatesGroup, State
form_router = Router()
class FSMAdmin(StatesGroup):
command = State()
name_product = State()
name_category = State()
discription = State()
columns = State()
async def command_admin(message: types.Message, state : FSMContext):
for admin_id in botdb.check_admin():
if admin_id["chat_id"] == message.from_user.id:
await message.answer("Приветствую, админ, какую выполнить команду")
await state.set_state(FSMAdmin.command)
else:
await message.answer("Вы не являетесь администратором!")
async def command_add_product_name(message: types.Message, state: FSMContext):
await state.update_data(name_product=message.text)
await state.set_state(FSMAdmin.discription)
await message.answer("Опишите продукт")
async def command_add_product_discription(message: types.Message, state: FSMContext):
data = await state.update_data(product_discription=message.text)
await message.answer(data)
async def commands_admin(message: types.Message, state: FSMContext):
await state.update_data(command=message.text)
if message.text == "add_category":
await message.answer("При создании каталога, будет создана запись в таблице с каталогами и будет создана доп. таблица с доп. колонками")
await message.answer("Напишите имя каталога")
await state.set_state(FSMAdmin.name_product)
elif message.text == "add_product":
await message.answer("Имя продукта")
await state.set_state(FSMAdmin.name_category)
elif message.text == "del_product":
pass
elif message.text == "del_category":
pass
else:
await message.answer("Нет такой команды")
await state.clear()
async def finish(message: types.Message, state: FSMContext):
current_state = await state.get_state()
if current_state is None:
return
await state.clear()
def register_admin():
form_router.message.register(finish, commands='отмена', state="*")
form_router.message.register(command_admin, commands='admin', state=None)
form_router.message.register(commands_admin, state=FSMAdmin)
form_router.message.register(command_add_product_name, FSMAdmin.name_product) # не ловит
form_router.message.register(command_add_product_discription, FSMAdmin.discription) # не ловит
return form_router