Контакты
Местоположение
Россия, Астраханская обл., Астрахань

Наибольший вклад в теги

Все теги (15)

Лучшие ответы пользователя

Все ответы (26)
  • Можно ли упростить код?

    @AstraVlad
    Финансист, консультант, программист-любитель
    Например положить команды и вызываемые ими смайлики с словарь вроде smileys = {text: smile_list} и сделать цикл:
    for text, smile_list in smileys:
        if text in message.text:
            msg = message.text
            for i in range(0, len(smile_list)):
                wtf = (text+"{0}]").format(i)
                if wtf in msg:
                      bot.send_message(message.chat.id,msg.replace(wtf,smile_list[i]))


    Список смайлов генерируется аналогично. Вообще, если мы видим, что у нас дважды встречается один и тот же (по структуре) фрагмент кода, значит мы что-то уже сделали не так и тут или нужен цикл или надо выделить его в отдельную функцию.
    Ответ написан
  • IndexError: list index out of range как исправить?

    @AstraVlad
    Финансист, консультант, программист-любитель
    split вернул пустой список или список из 1 элемента, а код пытается получить второй элемент (которого нет). Можно проверить длину списка перед обращением, можно завернуть в try-except и обработать исключение там.
    Ответ написан
  • Как добавить генератор документов на основании введенных пользователем данных на сайт?

    @AstraVlad
    Финансист, консультант, программист-любитель
    Как финансист юристу ( :)) могу посоветовать сразу исходить из того, что у сайта будет какой-то бэкэнд и вот там-то и будет происходить основная работа. Делаем АПИ, который, скажем, принимает введенные пользователем данные в виде JSON, на их основе генерирует документ и, например, выкладывает в заданную папку, а УРЛ отдает назад на фронт для ссылки "Скачать документ". Ну, или если сайт делается на чем-то вроде Джанго/Node.JS, то можно обойтись без АПИ (там по сути бэк генерирует фронт на лету).

    Я сейчас проектирую примерно такую же вещь с бизнес-планами и как раз колеблюсь между вариантами "бэк и фронт общаются через АПИ" и "написать все на Джанго и не париться".

    PS: Как вариант можно попробовать no-code/low-code решение, скажем в виде сайта на Тильде с формой, отправляющей данные в Таблицы Гугл (не помню, умеет ли Тильда делать это напрямую, но вроде должна), а там уже небольшой скрипт на Google App Script (который по сути JavaScript) генерирует документ и отправляет по почте заказчику. Или подвесить к той же Тильде свой сервис через вебхук и т.д. В общем, вариантов полно, вопрос только в навыках разработчика и деталях ТЗ.
    Ответ написан
  • Зачем нужны сеттеры в Python?

    @AstraVlad
    Финансист, консультант, программист-любитель
    Смысл не в том, чтобы прогер не мог выстрелить себе в ногу -- если захочет, то выстрелит, а в том, чтобы в нормальных условиях можно было проверить в ту ли ногу он стреляет, заменить при необходимости картечь на пулю на лету или вообще тихо аннулировать выстрел. А это бывает нужно, особенно если учесть, что поля объекта совсем не обязаны быть переменными-примитивами, спокойно лежащими в куче. Или могут ВНЕЗАПНО перестать ими быть по мере развития продукта.

    У меня иногда тоже бывает что когда пишу "правильно", разделяя уровни абстракции и всячески инкапсулируя, приходит в голову мысль: "А нафига? Можно же сделать проще." А потом через неделю-месяц-год приходится что-то переделывать и выясняется, что благодаря тому, что все сделано "по науке", можно поменять источник данных, скажем, с таблицы Эксель на локальном диске на Мускул, хостящийся за пол-мира от меня, за полчаса без малейшего напряга и изменения логики остальной части программы. И понимаешь, что ты, оказывается, не полный идиот :).
    Ответ написан
  • Какая разница между методами get_object и get в классе APIView?

    @AstraVlad
    Финансист, консультант, программист-любитель
    Как бы то, что get отрабатывает GET запрос, а get_object получает нужный объект из БД.

    Это пока примеры из туториала все кажется просто и непонятно зачем их разделять. А когда работаешь с нормальной (сложной) базой, внезапно оказывается, что отделять логику обработки HTTP-запросов от бизнес-логики это очень, очень хорошая идея.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (4)