from aiogram import Router, F from aiogram.fsm.context import FSMContext from aiogram.types import CallbackQuery from templates import commands as tcommands from utils.db import Postgres, Redis router = Router() @router.callback_query(F.data.startswith('enable_ban_media_')) async def enable_ban_media_btn(call: CallbackQuery, state: FSMContext): """ Ловит кнопку Включить :param call: CallbackQuery :param state: FSMContext :return: """ state_data = await state.get_data() p = Postgres() r = Redis() await p.update_data( table_name='ban_media', new_data={call.data[17:]: True}, query_filter={} ) await r.update_dict( key='ban_media', value={call.data[17:]: 'yes'} ) print('new redis data', {call.data[17:]: 'yes'}) await state_data['last_msg'].edit_text( text=tcommands.start_text, reply_markup=await tcommands.start_ikb() ) @router.callback_query(F.data.startswith('disable_ban_media_')) async def disable_ban_media_btn(call: CallbackQuery, state: FSMContext): """ Ловит кнопку Выключить :param call: CallbackQuery :param state: FSMContext :return: """ state_data = await state.get_data() p = Postgres() r = Redis() await p.update_data( table_name='ban_media', new_data={call.data[18:]: False}, query_filter={} ) await r.update_dict( key='ban_media', value={call.data[18:]: ''} ) print('new redis data', {call.data[18:]: ''}) await state_data['last_msg'].edit_text( text=tcommands.start_text, reply_markup=await tcommands.start_ikb() )