Не срабатывает кнопка в боте

Создал файл 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 шт):

Автор решения: Kira Rain

Вроде как нельзя импортировать из мейна димпетчер и бота, надо использовать роутер в файле с обработчиком кнопок импортируете

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)
→ Ссылка