Установите модуль настроек DJANGO в качестве переменной среды в Windows навсегда

я искал Web и Stack для этого решения.

как я могу навсегда установить переменную окружающей среды DJANGO_SETTINGS_MODULE on WINDOWS на постоянной основе, и покончим с этим.

я имею в виду

  1. Win Button + Pause/Break Button
  2. это приводит к Control PanelSystem and SecuritySystem
  3. клик Advanced System Settings
  4. клик Environment Variables
  5. есть две коробки, первая называется User variables и второй System variables
  6. On the System variables выберите New Button
  7. для имени переменной введите DJANGO_IMPORT_SETTINGS

XXX--> ЧТО Я ПОМЕЩАЮ В ПЕРЕМЕННОЕ ЗНАЧЕНИЕ, ЧТОБЫ УСТАНОВИТЬ ЕГО РАЗ И НАВСЕГДА?


на сайте Django на этом вопрос в нем говорится:

DJANGO_SETTINGS_MODULE

когда вы используете Django, вы должны сказать ему, какие настройки вы используете. Сделайте это с помощью переменную окружения DJANGO_SETTINGS_MODULE.

значение DJANGO_SETTINGS_MODULE должно быть в синтаксисе пути Python, например mysite.настройки. Обратите внимание, что модуль настроек должен находиться в пути поиска импорта Python.


что это значит ...должен быть в синтаксисе пути Python, например mysite.настройки... ?

  • у меня есть определенный каталог, где мой Python is расположенный: C:Python27
  • у меня есть определенный каталог, где мой Django расположен: C:Python27Libsite-packagesdjango

что это mysite средства. В какой директории это meanning C:Something......

можете ли вы поставить эту переменную раз и навсегда или вам придется постоянно менять ее для каждого проекта(Холли Мозес, я надеюсь, нет!)

и что означает эта подозрительно строка обратите внимание, что модуль настроек должен быть в поиске импорта Python путь.

все, что я хочу, чтобы установить переменную среды DJANGO_SETTINGS_MODULE и сделать раз и навсегда из этой проблемы

они должны действительно сделать учебники для энтузиастов кодирования тоже, а не только опытных закаленных профессионалов!

спасибо.

редактировать

чтобы работать, Django просто должен быть указан на допустимый файл настроек и по умолчанию он ищет переменную среды с именем DJANGO_SETTINGS_MODULE, чтобы сообщить ей, где найти настройки. Значение этой переменной должно быть путем импорта Python файла настроек, например как cms.настройки.

--> какой король каталога это:cms.settings? В Windows каждый каталог начинается с жесткого диска как C:Something...... Как вы можете запустить такой каталог в Windows?

EDIT_2

выдержка из книги

переменная среды DJANGO_SETTINGS_MODULE не определена.

решение выполнить команду python manage.py shell, а не python.

МОЙ ВОПРОС --> НА КАКОМ КАТАЛОГЕ?///МОЖЕТЕ ЛИ ВЫ УСТАНОВИТЬ ЕГО НА ОДИН РАЗ ИЛИ ОН ОТЛИЧАЕТСЯ ОТ ПРОЕКТА?

МОЙ ПРОЕКТ СТРУКТУРИРОВАН СЛЕДУЮЩИМ ОБРАЗОМ

C:Python27pysec-master(file)
|__local_settings.py
|__manage.py
|__settings.py
|__C:Python27pysec(file)
   |__ __init__.py
   |__example.py
   |__models.py
   |__xbrl.py
   |__xbrl_fundamentals.py

я пытаюсь запустить models.py и у меня а settings.py на C:Python27pysec-master Вы можете найти точную копию здесь.

MAYBE_IMPORTANT_EDIT

ребята, у меня есть файл с названием manage.py в моем проекте, который имеет это содержание

#!/usr/bin/env python
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")

    from django.core.management import execute_from_command_line

    execute_from_command_line(sys.argv)

это должно что-то делать при настройке переменной? Мне нужно сидеть здесь, внутри петли?

редактировать

для команды в режиме ожидания from django.db import settings мне нужно установить каталог для PYTHON_MODULE_SETTINGS как C:Python27Libsite-packagesdjangodb ?

СПАСИБО

2 ответов


ладно,не расстраивайся. Давайте рассмотрим этот шаг за шагом:

  • синтаксис пути Python:

    в Python, когда вы разделяете базу кода между модулями, вы квалифицируете имя импорта с именем модуля. Допустим, ваш проект структурирован следующим образом:

    my_project
    |__utils
    |  |____init__.py
    |  |__file_utils.py
    |__my_module
       |____init__.py
       |__main.py
    

    в своем main.py Если вы хотите получить доступ к методам, которые вы определили в file_utils.py вы добавляете оператор import в свой main.py как это:

    import utils.file_utils.read_file
    

    предполагая, что read_file - это метод, который вы хотите импортировать в main.py. Этот способ импорта модулей, где у вас есть . разделение каждого модуля называется синтаксисом пути python.

  • PYTHONPATH:

    в приведенном выше примере оператор import будет работать только в том случае, если интерпретатор Python знает, где искать первый модуль, а именно utils. Только когда он находит utils может ли он найти file_utils и read_file. Вы указываете список всех путей, которые интерпретатор должен искать в переменной окружения PYTHONPATH. Поэтому, чтобы иметь оператор import как указано выше в вашем коде, вы должны убедиться, что полный путь к вашему проекту my_project находится в PYTHONPATH. Предполагая my_project находится в C:\AMAZEBALLS_CODE\my_project вы должны есть!--18--> в своем PYTHONPATH

  • DJANGO_SETTINGS_MODULE:

    Предположим ваш my_project на самом деле приложение Django. Приложение Django нуждается в файле настроек, где вы указываете целая куча вещей. Чтобы указать Django, какой файл настроек вы хотите посмотреть, укажите его в DJANGO_SETTINGS_MODULE. Предполагая, что это ваша структура проекта:

    my_project
    |__utils/
    |  |____init__.py
    |  |__file_utils.py
    |__my_module/
    |  |____init__.py
    |  |__main.py
    |__site_settings/
       |__dev_settings.py
       |__production_settings.py
    

    myroject.site_settings модуль Django должен искать файл настроек. И myroject.site_settings.dev_settings это значение, которое вам нужно установить в DJANGO_SETTINGS_MODULE в приведенном выше случае. Когда документация говорит cms.settings или mysite.settings они имеют в виду cms или mysite это название вашего проекта и settings.py - это имя файла настроек.

теперь давайте посмотрим на ваш вопрос:

можете ли вы постоянно устанавливать его в переменных среды Windows? Конечно.
Это правильный путь? Нет.

потому что, если вы хотите создать другое приложение завтра в другом месте, вам придется отредактировать это в разделе переменные среды Окна. Кроме того, это практика использования другого файла настроек для среды разработки и другого для производства. Поэтому установка его в одном месте с одним значением делает его негибким. Но если вы знаете все вышеперечисленное и уверены, что будете использовать только один файл настроек set DJANGO_SETTINGS_MODULE to myproject.site_settings.dev_settings в разделе переменные env.

надеюсь, что это помогает!

EDIT:

Похоже, вы кладете свой в C:\Python27. Не помещайте свои проекты в установку python. Создать settings.py файл в вашем проекте и set DJANGO_SETTINGS_MODULE to pysec-master.settings


Вы сказали:

все, что я хочу, чтобы установить переменную среды DJANGO_SETTINGS_MODULE и будет сделано раз и навсегда от этой суеты

Если вы не хотите проходить утомительную процедуру каждый раз, вам не нужно делать ее постоянной, вам нужно только сделать процедуру автоматической.

создать bat и поставить set DJANGO_SETTINGS_MODULE='xxx.settings' внутри.

Если вы используете virtualenv, вы можете установить переменную среды в Бен/активировать.летучая мышь.