Этот вопрос закрыт для ответов, так как повторяет вопрос Как сделать переходы в aiogram из одной ветки в другую?
@Ornitier

Как реализовать функцию «Назад»?

Как в этом коде в функциях weather_bot_today_Sr, weather_bot_tomorrow_Sr, weather_bot_today_St и weather_bot_tomorrow_St правильно реализовать кнопку "Назад" или "В меню"? Нужно чтобы пользователь мог вернуться к выбору погоды на завтра или сегодня.
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
    start_buttons = ['Погода на сегодня', 'Погода на завтра']
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    keyboard.add(*start_buttons)

    await message.reply('Привет!\nЧтобы узнать погоду на сегодняшний или завтрашний день,\nвыберите подходящую опцию.', reply_markup=keyboard)

@dp.message_handler(Text(equals='Погода на сегодня'))
async def weather_bot_today_Sr(message: types.Message):
    city_keyboard = ['Саратов', 'Степное', 'Погода на завтра']
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    keyboard.add(*city_keyboard)

    await message.reply('Выберите населённый пункт', reply_markup=keyboard)

    @dp.message_handler(Text(equals='Саратов'))
    async def weather_bot_today_Sr(message: types.Message):
        await message.answer('Пожалуйста подождите..')

        weather_today_Sr()

        with open('weather.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)
    
    @dp.message_handler(Text(equals='Степное'))
    async def weather_bot_today_St(message: types.Message):
        await message.answer('Пожалуйста подождите..')

        weather_today_St()

        with open('weather.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)

@dp.message_handler(Text(equals='Погода на завтра'))
async def weather_bot_tomorrow(message: types.Message):
    city_keyboard = ['Саратов', 'Степное', 'Погода на сегодня']
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    keyboard.add(*city_keyboard)

    await message.reply('Выберите населённый пункт', reply_markup=keyboard)

    @dp.message_handler(Text(equals='Саратов'))
    async def weather_bot_tomorrow_Sr(message: types.Message):
        await message.answer('Пожалуйста подождите..')

        weather_tomorrow_Sr()

        with open('weather.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)

    @dp.message_handler(Text(equals='Степное'))
    async def weather_bot_today_St(message: types.Message):
        await message.answer('Пожалуйста подождите..')

        weather_tomorrow_St()

        with open('weather.json',  encoding='utf-8') as file:
            data_weather = json.load(file)

            for k, v in data_weather.items():
                weather_data = f"{k}: {v}"

                await message.answer(weather_data)
  • Вопрос задан
  • 253 просмотра
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект