我在为 Django 项目设置 DJANGO_SETTINGS_MODULE 时遇到一些问题。
我有一个目录~/dev/django-project
。在这个目录中,我有一个用 virtualenv 设置的虚拟环境,还有一个名为“blossom”的 django 项目,其中有一个名为“onora”的应用程序。跑步tree -L 3
from ~/dev/django-project/
向我展示以下内容:
.
├── Procfile
├── blossom
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── fixtures
│ │ └── initial_data_test.yaml
│ ├── manage.py
│ ├── onora
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── admin.py
│ │ ├── admin.pyc
│ │ ├── models.py
│ │ ├── models.pyc
│ │ ├── tests.py
│ │ └── views.py
│ ├── settings.py
│ ├── settings.pyc
│ ├── sqlite3-database
│ ├── urls.py
│ └── urls.pyc
├── blossom-sqlite3-db2
├── requirements.txt
└── virtual_environment
├── bin
│ ├── activate
│ ├── activate.csh
│ ├── activate.fish
│ ├── activate_this.py
│ ├── django-admin.py
│ ├── easy_install
│ ├── easy_install-2.7
│ ├── gunicorn
│ ├── gunicorn_django
│ ├── gunicorn_paster
│ ├── pip
│ ├── pip-2.7
│ ├── python
│ └── python2.7 -> python
├── include
│ └── python2.7 -> /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
└── lib
└── python2.7
我正在尝试使用以下命令从数据库转储数据
django-admin.py dumpdata
我的方法是跑步cd ~/dev/django-project
然后运行source virtual_environment/bin/activate
然后运行django-admin.py dumpdata
但是,我收到以下错误:
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.
我做了一些谷歌搜索并找到了这个页面:https://docs.djangoproject.com/en/dev/topics/settings/#designating-the-settings https://docs.djangoproject.com/en/dev/topics/settings/#designating-the-settings
这告诉我
当您使用 Django 时,您必须告诉它您正在使用哪些设置。
通过使用环境变量 DJANGO_SETTINGS_MODULE 来执行此操作。这
DJANGO_SETTINGS_MODULE 的值应该采用 Python 路径语法,例如
我的网站.设置。注意设置模块应该在Python上
导入搜索路径。
遵循以下建议在virtualenv下设置DJANGO_SETTINGS_MODULE? https://stackoverflow.com/questions/7598793/setting-django-settings-module-under-virtualenv我附加了以下几行
export DJANGO_SETTINGS_MODULE="blossom.settings"
echo $DJANGO_SETTINGS_MODULE
到 virtual_environment/bin/activate。现在,当我运行 activate 命令以激活虚拟环境时,我得到输出:
DJANGO_SETTINGS_MODULE set to blossom.settings
这对我来说看起来不错,但现在我遇到的问题是运行
django-admin.py dumpdata
返回以下错误:
ImportError: Could not import settings 'blossom.settings' (Is it on sys.path?): No module named blossom.settings
我究竟做错了什么?我怎样才能检查sys.path
?这应该如何运作?
Thanks.