169 похожих чатов

Если я хочу всегда отправлять одну и ту же анимацию

на какой-то запрос, можно ли получить на эту анимацию какую-то уникальную ссылку, которая не протухнет и не пропадёт?
По file_id можно отправить анимацию, но file_id протухает. Как получить file_id по unique_id не понял.

26 ответов

18 просмотров

файл айди протухает? За какое время?

У тебя file_id "протухает" ровно по одной причине: ты в своём боте используешь file_id, полученный ДРУГИМ ботом

✨ Uni [🌊 В отпуске]
пиздеж

То-то же, хуйня какая-то

✨ Uni [🌊 В отпуске]
пиздеж

Кстати, я прикрутил Fluent ещё и к файл айди. Теперь можно делать например так: class DefaultHandlers(BasicHandlerGroup): """ Handlers for second-basic commands """ router = ModRouter(name="DefaultHandlers!") @router.message(Command(commands=['start'])) async def cmd_start(self, m: Message, stuff: DataHub): """ Start command """ await m.answer_animation(stuff.start.animation()) if m.from_user.username: await m.answer(stuff.start.text.username(username=m.from_user.username)) else: await m.answer(stuff.start.text())

Vitalii Hreben
А зачем класс?

Я так хендлеры задаю

Aleksandr Danilov 🇺🇦
Я так хендлеры задаю

А чем это отличается от обычного размещения роутера в модуле?

Vitalii Hreben
А чем это отличается от обычного размещения роутер...

Ничем. Но мне так удобнее. Правда в тройке большинство причин для создания такого модуля исчезло, так что это порт с 2 на 3.

ну тут кому как удобна

✨ Uni [🌊 В отпуске]
ну тут кому как удобна

Можно конечно и getitem переопределить, но тогда уходит преимущество твоего варианта

Не сразу заметил, но всё же. Оказалось удобно использовать запросы к БД. Скажем, тебе надо в нескольких хендлерах (их роутеры связаны друг за другом) вызвать одинаковый запрос к БД. В классе с роутером создаёшь метод, затем его наследники получают возможность использовать его с минимальным расширением. Удобно.

Aleksandr Danilov 🇺🇦
Не сразу заметил, но всё же. Оказалось удобно исп...

Я просто выделяю всю работу с бд в отдельные классы (паттерн репозиторий) Мне не нравится смешивать логику запросов и отображения в хендлерах.

Vitalii Hreben
Я просто выделяю всю работу с бд в отдельные класс...

почему у тебя в базовом репозитории нет основных crud операций?

Michael Anishchanka
А в чём профит репозиториев?

Логика работы с бд собрана в одном месте, легче тестировать

Vitalii Hreben
Не везде нужны базовые круд операции )

ладно, а чем он в твоём случае отличается от dao?

Michael Anishchanka
а в чем отличие от dao

Я честно пытался изучить отличия, мне даже в чатах объясняли уже где-то. И всё ещё я не вижу разницы между ними, мне кажется это как с шавермой и шаурмой:)

а хз, если чесно я в dao особо не вникал )) Ну и в примере наверное не совсем корректный пример репозитория, я с репозитория сейчас возвращаю уже объекты бизнес логики которые не всегда мапятся напрямую в одну таблицу, например как здесь. А dao наверное больше про прямое отображение таблицы и объекта, поправь если ошибаюсь

Юрий Чебышев
А что делает exception_mapper?

Мапит ошибки алхимии в ошибки domain слоя, пока не придумал как лучше это сделать

Vitalii Hreben
Мапит ошибки алхимии в ошибки domain слоя, пока не...

Прикольно, давно думаю об этом, но всё никак не начну)

Похожие вопросы

Обсуждают сегодня

У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
Всем привет. Сейчас я изучаю erlang по книге Erlang and OTP in action. Дошел до главы где реализуется первый gen server на примере tcp rpc сервера. Меня очень сильно смутил ко...
Freezing Death
6
что за асемблер кста?
Shvabrikk Nya
19
Добрый день! Пробую отловить исключение EConvertError: function _TryTextToDouble(var DoubleVar: Extended; Text: String): Boolean; begin try DoubleVar := StrToFloat...
Kirill Filippenok
19
Подскажите... Есть ли название у способа разработки кода, в котором: сперва пишут минимальную рабочую структуру: Напр. ввод, обработка, вывод, контроль. Потом эту структуру д...
Budemposmotret
6
В дизассемблере вижу, что строки пихают в регистры через lea, почему так, а не через mov?
Oleg
8
всем привет. реально ли понять чем в процессе занята память? delphi/linux, процесс свой
Handatros
12
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Коллеги, а не могли бы вы подсказать, как происходит оптимизация кода при выполнении кода julia? (Точнее, как управлять уровнем оптимизации, аналогично LLVM/GCC). Потому что...
Илья Гаража
5
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Карта сайта