• Что значит сообщение [Django] ERROR: Invalid HTTP_HOST header...?

    crazyzubr
    @crazyzubr
    Python backend-developer
    Нужно добавить 'www.somesite.com' в настройки проекта, которые находятся в файле `settings_local.py` или `settings.py` для параметра ALLOWED_HOSTS.

    Например, так:
    ALLOWED_HOSTS = ['www.somesite.com', 'somesite.com']

    Или разрешить любые хосты:
    ALLOWED_HOSTS = ['*']

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

    'loggers': {
          'django.security.DisallowedHost': {
               'handlers': ['null'],
               'propagate': False,
    },
    Ответ написан
    5 комментариев
  • Не получается поднять проект на Heroku?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Ошибка "ModuleNotFoundError: No module named 'dj-project'" говорит о том, что в том же каталоге, где лежит Procfile, нет файла dj-project.wsgi, прописанного в этот Procfile. Есть подозрение, что в Procfile должно быть: web: gunicorn catapp.wsgi
    Ответ написан
    3 комментария
  • Что такое slug в разработке?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Чаще всего, как уже написали, встречается в URL, но все же его значение чуть более шире - slug это уникальная строка идентификатор, понятная человеку (в отличие от ID) и содержащая только "безопасные" символы:
    - 0-9
    - a-z (общепринято - в нижнем регистре)
    - символ -
    - иногда еще символ _
    Могут использоваться не только в URL для понятности, но и, например, в запросах к БД (в первую очередь - на уровне АПИ) - ведь
    SELECT * FROM pages WHERE category="some-slug"
    более понятно, чем
    SELECT * FROM pages WHERE category=126.
    На уровне API это выглядит как
    get_pages_in_category( 'some-slug' )
    или
    $object->get_pages_in_category( 'some-slug' ).
    В общем, это человеко-понятный уникальный идентификатор.
    Ответ написан
    1 комментарий
  • Покритикуйте код, что можно улучшить?

    @deliro
    1. db_table не использовать, если ты не понимаешь, для чего он
    2. Дублирование названия класса в атрибутах ужасно
    3. Почитай стайлгайды Django и посмотри, куда нужно класть class Meta и __str__
    4. Код грязноват. Ненужные комменты, snake_case перемешан с camelCase, несоблюдение PEP8
    5. Алгоритмические ошибки. Например, вьюха subscribe, если метод не POST, ведёт в никуда
    6. В той же вьюхе стоит редирект на URL. Используй reverse, в шаблонах же используешь {% url %}. Кстати, шорткат redirect, который ты используешь, умеет редиректить на название вьюхи (name в urls) и на конкретный объект, если у него определён метод get_absolute_url
    7. Тут указали, что стоит использовать Class Based Views. Для новичка это слишком неочевидные вещи с этими вашими миксинами. Лучше разберись сначала в Function Based Views

    Ответ написан
    Комментировать