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

    @PashaWNN
    Для редко меняющихся надписей (упомянутое брендирование) могу предложить такой вариант: создать отдельный файл, скажем, strings.py
    SITE_NAME = 'Habr' # захардкожено
    SITE_DESCRIPTION = os.getenv('SITE_DESCRIPTION')  # или можно взять из переменных окружения

    А потом просто импортировать строки во view и передавать их в контекст шаблона
    Ответ написан
  • Переключение контента по языку?

    @PashaWNN
    Две базы данных труднее поддерживать в одинаковом состоянии и такое решение вообще выглядит странно, плюс лишний оверхед в виде двух процессов самих баз данных. Вариант с двумя колонками выглядит правильнее и логичнее. Также возможен вариант, когда колонки, зависящие от языка, выносятся вообще в отдельную таблицу, плюс туда колонка с кодом/идентификатором языка и foreign key на запись в основной таблице. Такой подход немного увеличит сложность запросов к БД, но даст в перспективе возможность более просто добавления большего количества языков.
    Ответ написан
    Комментировать
  • Как правильно изменить поле наследуемой модели на жёстко заданное значение?

    @PashaWNN
    Необходимо заморачиваться, т.к. логика чтения/записи в базу завязана на сами классы Field и так она работать не будет, а скорее всего возникнет ошибка ещё при попытке создания миграций из-за того, что поле модели переопределено на обычную переменную.
    Но лучше заморочиться и подумать над архитектурой, почему вообще она привела к необходимости жестко задавать значения полей для дочерних моделей. Возможно, у базового класса эти колонки не нужны?
    Джанго также поддерживает такую вещь, как абстрактные модели, которые вообще не создают таблиц в базе данных, а только выступают базовыми для других моделей. Скорее всего это то, что вам нужно.
    Ответ написан
    1 комментарий