Size: a a a

2020 January 05

AR

Alex RootJunior in aiogram [ru]
ТС
Я в него пр кинул, но походу он никому не нужен 😁 (или я криво кинул), получил ачивку за первый пр 🌈
Все ок, мне надо проверить его
источник

E

Egor in aiogram [ru]
Юрий 👨‍🔬 Чебышев
Я сделал так:
У меня есть уровни с которыми можно сделать разные действия: показать, редактировать, удалить, протестировать.
В колбекдата положил lvl_show_{some_lvl_id}
В принимающем хендлере c.data.startwith('lvl_')
И внутри делаю callback.data.split('_')
Дальше в зависимости от того какое слово второе такую функцию и вызываю. Мож говнокод конечно. Хз.
И ещё я не точно помню как зовутся переменные в колбеке, может text?🤔
Что бы ещё придумать вместо того, чтобы посмотреть пример по колбек фабрике
источник

Forevka ÐΞV in aiogram [ru]
Egor
Что бы ещё придумать вместо того, чтобы посмотреть пример по колбек фабрике
всегда приятнее накостылять своё
источник

Е

Егор in aiogram [ru]
Forevka ÐΞV
всегда приятнее накостылять своё
Почему?
источник

Forevka ÐΞV in aiogram [ru]
Егор
Почему?
это у тебя нужно спросить
источник

Е

Егор in aiogram [ru]
Forevka ÐΞV
это у тебя нужно спросить
Я своё пишу если нет аналогов,  нормальных
источник

Forevka ÐΞV in aiogram [ru]
Егор
Я своё пишу если нет аналогов,  нормальных
ога
источник

Е

Егор in aiogram [ru]
?
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in aiogram [ru]
Я кстати сходу не понял колбек фактори
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in aiogram [ru]
У меня есть несколько разных групп кнопок, колбек фактори норм сработает в этом случае?
источник

G

Gabben in aiogram [ru]
Юрий 👨‍🔬 Чебышев
Я сделал так:
У меня есть уровни с которыми можно сделать разные действия: показать, редактировать, удалить, протестировать.
В колбекдата положил lvl_show_{some_lvl_id}
В принимающем хендлере c.data.startwith('lvl_')
И внутри делаю callback.data.split('_')
Дальше в зависимости от того какое слово второе такую функцию и вызываю. Мож говнокод конечно. Хз.
И ещё я не точно помню как зовутся переменные в колбеке, может text?🤔
cb_factory = CallbackData(“lvl”, “some”, “lvl”)

@dp.message_handler(commands=[“start”])
async def start_cmd(message):
   await message.answer(..., reply_markup=types.InlineKeyboardMarkup().row(types.InlineKeyboardButton('something', callback_data=cb_factory.new(some='show', lvl=123)),
))


# указываем фильтр по «второму» слову
# «присваивая» это слово к определенному хендлеру
# что позволяет избавится от кучки ifов
@dp.callback_query_handler(cb_factory.filter(some=“show”))
async def foo(callback_query, callback_data: dict):
   lvl = callback_data[“lvl”]
источник

G

Gabben in aiogram [ru]
Все таки писать код на айфоне это ужасно
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in aiogram [ru]
ТС
Выложить осталось
Ну, это на полгода еще🙈
источник

ЮЧ

Юрий 👨‍🔬 Чебышев in aiogram [ru]
Gabben
cb_factory = CallbackData(“lvl”, “some”, “lvl”)

@dp.message_handler(commands=[“start”])
async def start_cmd(message):
   await message.answer(..., reply_markup=types.InlineKeyboardMarkup().row(types.InlineKeyboardButton('something', callback_data=cb_factory.new(some='show', lvl=123)),
))


# указываем фильтр по «второму» слову
# «присваивая» это слово к определенному хендлеру
# что позволяет избавится от кучки ifов
@dp.callback_query_handler(cb_factory.filter(some=“show”))
async def foo(callback_query, callback_data: dict):
   lvl = callback_data[“lvl”]
У меня был словарь где слово из колбек даты соответствовало функции и не было кучи ифов, но да, так тоже неплохо, и добавлять действия должно быть проще, спасибо
источник

MG

Mario Glesias in aiogram [ru]
ТС
Как пакет назвать? aiogram-architect слишком нагло и пошло
Показать пошлость?
источник

G

Gabben in aiogram [ru]
Genri Spayer
вопрос не в памяти, а удобстве для конечного пользователя
В редисе есть ttl записи, ничего даже придумывать не надо. Можно настраивать время жизни стейта и данных через https://github.com/aiogram/aiogram/blob/9a6caba41e96808f5d31ebf88dfca9a51dba6320/aiogram/contrib/fsm_storage/redis.py#L224
источник

GS

Genri Spayer in aiogram [ru]
Gabben
В редисе есть ttl записи, ничего даже придумывать не надо. Можно настраивать время жизни стейта и данных через https://github.com/aiogram/aiogram/blob/9a6caba41e96808f5d31ebf88dfca9a51dba6320/aiogram/contrib/fsm_storage/redis.py#L224
при прочтении доков на это наткнулся уже)
спасибо
источник

GS

Genri Spayer in aiogram [ru]
классная дб

кстати такой вопрос - редис память не освобождает даже при удалении записей
я так понимаю это связано со способом хранения страницами?
источник

G

Gabben in aiogram [ru]
ТС
Как пакет назвать? aiogram-architect слишком нагло и пошло
aiogram-mvc
источник

GS

Genri Spayer in aiogram [ru]
оно со временем подчистит хотя бы?
или рост постоянный?
источник