我用的是 FSM,aiogram 2*。我收到以下错误: TypeError:过滤器必须可调用和/或可等待!
一切似乎都是按照FSM的指示进行的。我知道这是一个类型错误。但也许在版本 2 aiogram 中写法有所不同?我在文档中找不到它。先感谢您!
class UserStates(StatesGroup):
find_group = State()
@dp.message_handler(text=['Найти группу'])
async def func(message: types.Message, state: FSMContext):
keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
await message.answer("Введите номер группы", reply_markup=keyboard)
state.set_state(UserStates.find_group)
@dp.message_handler(UserStates.find_group)
async def func(message: types.Message, state: FSMContext):
if(message.text == '7'):
await bot.send_message(message.chat.id, "Вы ввели номер группы 7")
elif(message.text == '6'):
await bot.send_message(message.chat.id, "Вы ввели номер группы 6")
else:
await bot.send_message(message.chat.id, "Такой группы не существует")
state.clear()
错误:
C:\Users\******\AppData\Local\Programs\Python\Python39\python.exe C:\Users\******\Desktop\pythonProjectuchenik\pythonProjectuchenik\main.py
Traceback (most recent call last):
File "C:\Users\******\Desktop\pythonProjectuchenik\pythonProjectuchenik\main.py", line 25, in <module>
async def func(message: types.Message, state: FSMContext):
File "C:\Users\******\AppData\Local\Programs\Python\Python39\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 560, in decorator
self.register_message_handler(callback, *custom_filters,
File "C:\Users\******\AppData\Local\Programs\Python\Python39\lib\site-packages\aiogram\dispatcher\dispatcher.py", line 486, in register_message_handler
self.message_handlers.register(self._wrap_async_task(callback, run_task), filters_set)
File "C:\Users\******\AppData\Local\Programs\Python\Python39\lib\site-packages\aiogram\dispatcher\handler.py", line 62, in register
filters = get_filters_spec(self.dispatcher, filters)
File "C:\Users\******\AppData\Local\Programs\Python\Python39\lib\site-packages\aiogram\dispatcher\filters\filters.py", line 48, in get_filters_spec
data.append(get_filter_spec(dispatcher, i))
File "C:\Users\******\AppData\Local\Programs\Python\Python39\lib\site-packages\aiogram\dispatcher\filters\filters.py", line 28, in get_filter_spec
raise TypeError('Filter must be callable and/or awaitable!')
TypeError: Filter must be callable and/or awaitable!
Process finished with exit code 1