• Django проект выдает ошибку, что делать?

    @chemdev
    в проекте должен быть файл с зависимостями.
    Если он называется requirements.txt, то создайте окружение для своего проекта, активируйте и установите зависимости.
    cd my_project_folder
    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt

    Команды актуальны для линукса
    Ответ написан
    1 комментарий
  • Django проект выдает ошибку, что делать?

    from celery import Celery
    ModuleNotFoundError: No module named 'celery'

    Последние строки прямо же говорят о проблеме.
    p.s оформляйте вопрос правильно!
    Ответ написан
    Комментировать
  • Можно ли в Nginx использовать переменные с хостами для описания upstream?

    @Wexter
    В server можно указать либо IP адрес, либо доменное имя.
    Проще будет создать отдельные доменные имена и менять адреса у них (либо в /etc/hosts, либо подняв внутренний dns сервер)
    Ответ написан
    1 комментарий
  • Как вставить переменную в строку в кавычках?

    @hobo-mts
    Shortly
    Вообще-то это C/C++.

    char url[макс_длина];
    sprintf(url, "https://site.com/%s", <тут переменная>);
    curl_easy_setopt(curl, CURLOPT_URL, url);
    Ответ написан
    3 комментария
  • Почему при введении команды пишет Python?

    У вас не установлен Python. Вместо этого вы вызываете заглушку, которая с некоторых пор поставляется с Windows 10/11. Эта заглушка, когда вызывается без параметров, должна открывать вам страницу в Microsoft Store, с которой можно быстро поставить Python. Она сделана для новичков, чтобы им было проще поставить Python. Если у вас Стор удалён или как-то заблокирован (не удивлюсь, т.к. многие его почему-то боятся), то возможно поэтому у вас ничего не открывается.

    Если вы поставите Python из Стора, то команда python автоматически отвяжется от этой заглушки и привяжется к реальному интерпретатору Питона. Если поставите иным способом, возможно нужно будет выключить эту заглушку вручную, чтобы ваши шеллы не находили её в PATH раньше настоящего Питона. Это быстро делается через Manage app execution aliases на странице Apps & Features.

    Лично меня Питон из Магазина почти во всём устраивает (особенно если им правильно пользоваться и использовать виртуальные окружения), но народ любит подискутировать на эту тему, поэтому не буду навязывать вам свою точку зрения на этот счёт.
    Ответ написан
    Комментировать
  • Как так получается, то dig выдаёт разные ip A-записей с каждым запросом?

    suffix_ixbt
    @suffix_ixbt
    https://www.babai.ru/
    Это всегда делается в два этапа:

    1. Узнаём NS

    dig mos.ru NS
    mos.ru.				IN	NS
    ANSWER SECTION:
    mos.ru.			3600	IN	NS	ns3.mos.ru.
    mos.ru.			3600	IN	NS	ns4.mos.ru.
    mos.ru.			3600	IN	NS	ns1.mos.ru.


    2. Узнаём ВСЕ записи

    dig @ns1.mos.ru mos.ru ANY
    mos.ru.				IN	ANY
    ANSWER SECTION:
    mos.ru.			3600	IN	SRV	10 50 5061 dit-uc1-exw-e-s2.mos.ru.
    mos.ru.			3600	IN	SOA	ns1.mos.ru. domains.it.mos.ru. 11872 10800 3600 2419200 900
    mos.ru.			300	IN	A	94.79.51.13
    mos.ru.			300	IN	A	94.79.51.14
    mos.ru.			300	IN	A	212.11.155.166
    mos.ru.			300	IN	A	212.11.155.167
    mos.ru.			300	IN	A	212.11.155.165
    mos.ru.			300	IN	A	94.79.51.12
    mos.ru.			3600	IN	MX	10 mx01.mos.ru.
    mos.ru.			3600	IN	TXT	"v=spf1 redirect=_spf.mos.ru"
    mos.ru.			3600	IN	TXT	"MS=ms95580307"
    mos.ru.			3600	IN	TXT	"google-site-verification=EgkuJTEuiGJDP1C6QIPRfC5WunbBihbxht-jjl6nNHc"
    mos.ru.			3600	IN	TXT	"mailru-verification: 8b427464cb1c5c34"
    mos.ru.			3600	IN	TXT	"ugcfUdGQWPaTZ6LEhvJVXJbo0vnVP/eUSLiVszaOreK9b0JgGQOQqK+GjhjHxBTOWqrTbKIF/ncrGiOG9rUhuw=="
    mos.ru.			3600	IN	TXT	"yandex-verification: ada20f70198d2619"
    mos.ru.			3600	IN	TXT	"google-site-verification=zUOQwgdFfXkRSgu50v_p8uBwYJrY_HNYgESQIkSJmGk"
    mos.ru.			3600	IN	NS	ns4.mos.ru.
    mos.ru.			3600	IN	NS	ns1.mos.ru.
    mos.ru.			3600	IN	NS	ns3.mos.ru.


    Ну и в полученных данных смотрите на ваши 6 А записей :)
    Ответ написан
    Комментировать
  • Как бесплатно писать софт под винду в 2021?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Как бесплатно писать софт под винду в 2021?
    Просто пишите, и денег за работу не берите.
    Ответ написан
    Комментировать
  • Как максимально правильно написать сервис systemd с iptables?

    fara_ib
    @fara_ib
    А ваш openvpn уже сконфигурирован/собран для работы с systemd?
    Openvpn –version дает строку enable-systemd=yes? Порт сервиса меняется в конфигурации сервера.
    Ну и далее Server:
    Place your server configuration file in /etc/openvpn/server
    Use the openvpn-server@.service like so:
    $ sudo systemctl start openvpn-server@{Server-config}
    Replace {Server-config} with the name of your config file without the .conf И еще Start at boot:
    Replace start with enable
    Ответ написан
    Комментировать
  • Идеи мини-проектов в backend на node js?

    @vshvydky
    работодателю будет интересно видеть не то для чего написано апи, а как
    плюсом будет, если напишешь рест апи сервис с использованием TS на экспресс и рядом на nest
    покажешь что понимаешь принципы построения архитектуры и масштабируемости
    из полезных тем, которые тебе персонально могут в дальшейшем пригодиться:
    1. система авторизации
    2. система почтовых рассылок
    3. система пушей
    4. система подготовки печатных форм
    и тп, любые прикладные задачи, которые ты можешь применять в проектах вне зависимости от его тематики.
    Ответ написан
    Комментировать
  • Как сделать такую анимацию?

    @jamtuson
    Эта штука сделана на WebGL с использованием уравнения Навье-Стокса
    https://ru.wikipedia.org/wiki/%D0%A3%D1%80%D0%B0%D...

    https://codepen.io/PavelDoGreat/pen/zdWzEL
    developer.download.nvidia.com/books/HTML/gpugems/g...
    Пример разбора есть в книге по динамике жидкостей.
    Ответ написан
    Комментировать
  • Не получается зарегистрироваться с помощью VK и allauth?

    @NorthWood69
    На текущий момент для решения этой проблемы надо сделать две правки:
    1. В файле allauth/socialaccount/providers/vk/views.py в методе complete_login в переменной params исправить 'v': '3.00' на 'v': '5.00'.
    2. В файле allauth/socialaccount/providers/vk/provider.py в методе extract_uid заменить строку return str(data['uid']) на return str(data['id'])

    P.S. Версия allauth 0.39

    Удачи в делах!
    Ответ написан
    5 комментариев
  • Какие должны быть размеры в дизайне?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    Не оттуда пляшете.

    Давайте я вам как девочка девочке всё объясню. На примере джинсов.
    Есть такая штука мода. Сейчас в обтяжку, раньше клеш или широченные. Но при этом всегда остаются люди предпочитающие классику или консерваторы, которые предпочитают даже слегка устаревшую классику.

    Так вот, с сайтами аналогичная история.
    10 лет назад считалось, что шрифт 14px это гигантомания и использовали 10 или 12. Между строчками крошечные отступы. Особо нерадивые даже между абзацами пытались не делать пустых строк.

    Есть мода и восприятие пользователем современных сайтов. То, как хочется видеть именно сейчас. Изменяются даже пропорции и зависимости.
    96 это точно такое же красивое число как 100. Это 16*6. А 16 это стандартный размер шрифта основных браузеров.

    Кроме этого есть аспекты адаптивности.
    И правильно не ширина кнопки равна 100 или 96px, а ширина кнопки это ширина текста плюс отступы. И хорошо бы, чтобы эти отступы были пропорциональны размеру шрифта, а не кратны 5px. Вы поставите отступ четко 20px, а пользователь поставит в настройках браузера шрифт 150%. И получится куцая кнопка с некрасивыми маленькими отступами.
    При этом не все элементы должны быть кратны размеру шрифта, какие-то имеют другие зависимости.

    Другой вариант, пропорции относительно размеров экрана или блока. Например, кнопка должна занимать всю ширину блока или половину. Если текст не помещается, то переносится.

    Поэтому, хороший дизайнер либо сопровождает работу верстальщика, либо пишет сопроводительное письмо с указанием зависимостей, либо и то и другое.

    И да, дизайнер может четко сказать, что справа отступ 19px, а слева 17, потому что визуально (например, из-за особенностей шрифта) получается ровно. Если это проблема для верстальщика, то не надо работать с таким верстальщиком.
    Верно и в обратную сторону, если дизайнер нагородил какую-то невменяемую конструкцию из-за которой прибавляется лишняя 1000 строчек кода, то имеет смысл обсудить целесообразность ее использования с самим дизайнером и заказчиком.

    Про вклад заказчиков в дизайн, я думаю, вы и сами знаете. У них особенное чувство прекрасного, хорошо, если просто консерватор из первого абзаца.
    Ответ написан
    6 комментариев
  • Как в этой команде для centos поменять версии python на конкретные?

    @dimuska139
    Backend developer
    Юзай для окружения либо virtualenv, либо в докер-контейнере разверни.
    Ответ написан
    Комментировать
  • Как в Django организовать миграцию для двух связанных моделей с автоматической подстановкой дефолтных значений поля?

    @marazmiki
    Укротитель питонов
    Сценарий для джанги я бы предложил такой:
    1. Создать модель ModelY, сгенерировать и применить соответствующую миграцию.
    2. Добавить в Model необязательный (т.е. null=True) внешний на ModelY. Сгенерировать миграцию и применить её.
    3. Создать дата-миграцию, в которой создадим "дефолтный" объект ModelY. Накатить её.
    4. Изменить внешний ключ (см. п.2) таким образом, чтобы он подставлял дефолтное значение. Пока не убирать null=True. Накатить. Теперь все вновь созданные модели будут создаваться правильно
    5. Создать дата-миграцию, которая заменила бы все нулевые внешние ключи на дефолтный объект. Накатить.
    6. Теперь можно сделать внешний ключ из п.2. обязательным, т.е. убрать null=True.


    Что же касается best practices, то из опыта я бы посоветовал следующее:

    • Не надо пытаться минимизировать число миграций или засунуть всё в одну. Напротив, лучше идти по пути упрощения миграций, а не уменьшия их количества.
    • Миграции лучше делать максимально независимыми друг от друга.
    • Не нужно заморачиваться с two-way; если какое-то решение оказалось неудачным, лучше сделать ещё одну миграцию, которая делает противоложную операцию относительно предыдущей, чем откатываться.
    • Если добавляете новое поле, обязательно делайте его сперва null, а лишь потом заполняйте.
    Ответ написан
    7 комментариев
  • Как в Django form запретить изменять поле ввода?

    @UPSA
    anykey. Я не программист, я просто ленивый.
    На 100% никак.
    Есть волшебная кнопка в браузерах - F12
    Можно менять значения в DOM объектах. Любят некоторые блокировать страницу пока не зарегистрируешься - меняем свойства объекта и продолжаем читать ))).
    Могу даже ПОСТ запросы менять.

    Делай проверку когда форма отослана.
    Ответ написан
    1 комментарий
  • Почему я должен писать именно так, а не иначе?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Почему я должен писать именно так, а не иначе?
    Хороший вопрос. Один человек, изначально тоже подумал, а как бы вообще замутить такую конструкцию, чтобы я мог считать, что одно слово - это функция, а другое аргумент. И придумал письменность.
    Ответ написан
    Комментировать
  • Почему я должен писать именно так, а не иначе?

    @AlexSku
    не буду отвечать из-за модератора
    Скобки говорят, что Write это функция.
    Точка говорит, что она принадлежит объекту Console. Функцию объекта (класса) принято называть методом.
    Ответ написан
    Комментировать
  • Почему я должен писать именно так, а не иначе?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Почему я не могу убрать скобки, или ещё что-нибудь, и написать так, как мне хочется. В общем, где все это определено?

    Это определено спецификацией языка на котором вы пишете. Среди прочего она определяет грамматику языка (т.е. как можно писать) и семантику языковых конструкций (т.е. что написанное так или иначе обозначает).
    Ответ написан
    Комментировать
  • Почему я должен писать именно так, а не иначе?

    @MamaLuyba
    не, писать ты можешь, как угодно. но работать это не будет.
    почему ты написал "добрый день", а не "дываобыв валывн"? так же и тут.
    Ответ написан
    1 комментарий