Установите модуль настроек DJANGO в качестве переменной среды в Windows навсегда
я искал Web и Stack для этого решения.
как я могу навсегда установить переменную окружающей среды DJANGO_SETTINGS_MODULE
on WINDOWS
на постоянной основе, и покончим с этим.
я имею в виду
-
Win Button
+Pause/Break Button
- это приводит к
Control PanelSystem and SecuritySystem
- клик
Advanced System Settings
- клик
Environment Variables
- есть две коробки, первая называется
User variables
и второйSystem variables
- On the
System variables
выберитеNew Button
- для имени переменной введите
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, вы можете установить переменную среды в Бен/активировать.летучая мышь.