Не срабатывает кнопка в боте
Создал файл main, в котором прописал основные команд, затем создал второй файлик и в нем пытаюсь создать второй набор команд конкретного направления работы бота и чего то не могу понять, что не так. Импортировал из мэйна диспатчер и бота
from main import dp, bots
А теперь пытаюсь сделать кнопку, но функция не срабатывает
@dp.message(text=['Дневник стажировки'])
async def bar_dnevnik(message: types.Message, state: FSMContext):
await message.answer('Дневник стажировки', reply_markup=kb.bar_dnevnik)
await state.set_state(BarmenState.bar_main)
Что забыл?
Сразу предупрежу, так как aiogram третий, то тут пишется именно та, без _handler
INFO:aiogram.event:Update id=5947724 is not handled. Duration 1 ms by bot id=5237273197
Ответы (1 шт):
Вроде как нельзя импортировать из мейна димпетчер и бота, надо использовать роутер в файле с обработчиком кнопок импортируете
from aiogram import Router
from aiogram.types import Message, CallbackQuery
далее инициализируем роутер
router: Router = Router()
далее ваш код
@router.message(text=['Дневник стажировки'])
async def bar_dnevnik(message: Message, state: FSMContext):
await message.answer('Дневник стажировки', reply_markup=kb.bar_dnevnik)
await state.set_state(BarmenState.bar_main)
А в файле мэйн надо не забыть импортировать файл с обработчиками например он называется у вас user_andlers и затем зарегистрировать роутер в диспетчере Например:
dp.include_router(user_handlers.router)