Как упростить хендлер?
Как можно упростить данный хендлей, просто если очень писать много городов то выйдет код в много строчек. P.s в дальнейшем хочу сделать, чтобы вариант который выбрал пользователь записывался в БД, и потом информацию которую он хочет получить, он получал бы только для своего города
@dp.inline_handler()
async def empty_query(query: types.InlineQuery):
await query.answer(results=[
types.InlineQueryResultArticle(
id='1',
title='Москва',
description='Описание',
input_message_content=types.InputTextMessageContent(
message_text='Москва')
),
types.InlineQueryResultArticle(
id='2',
title='СПб',
description='Описание',
input_message_content=types.InputTextMessageContent(
message_text='СПб')
),
types.InlineQueryResultArticle(
id='3',
title='Воронеж',
description='Описание',
input_message_content=types.InputTextMessageContent(
message_text='Воронеж')
)
])
Ответы (1 шт):
Автор решения: vadim vaduxa
→ Ссылка
Данные передавать в отдельной переменной data, остальной код получится фиксированной длины:
data = [['1', 'Москва', 'Описание', 'Москва'], ['2', 'СПб', 'Описание', 'СПб'], ]
r = [types.InlineQueryResultArticle(
id=d[0], title=d[1], description=d[2],
input_message_content=types.InputTextMessageContent(message_text=d[3])
) for d in data]
await query.answer(results=r)