设置Django的Djangoadmin时出现问题,py

2024-09-24 22:25:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用django-admin.py loaddata在开发人员服务器上为数据库设定种子。我正在使用django 1.7.1。在将文件符号链接到我的项目后,当我试图运行命令时,出现以下错误:

django.core.exceptions.ImproperlyConfigured: Requested setting USE_I18N, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

这就引出了this问题。所以我尝试了export DJANGO_SETTINGS_MODULE=inventory_manage.settings的推荐解决方案。但是,当我再次尝试运行loaddata命令时,遇到了这个ImportError

ImportError: Could not import settings 'inventory_manager.settings' (Is it on sys.path? Is there an import error in the settings file?): No module named inventory_manager.settings

进一步research检查我的站点是否在我的virtualenv的sys.path上。它是:

/Users/Aaron/Development/inventory-manager <--This is it
/Users/Aaron/.virtualenvs/inventorymgr/lib/python27.zip
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/plat-darwin
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/plat-mac
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/plat-mac/lib-scriptpackages
/Users/Aaron/.virtualenvs/inventorymgr/Extras/lib/python
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/lib-tk
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/lib-old
/Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/lib-dynload
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 

/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin
 /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages
    /Users/Aaron/.virtualenvs/inventorymgr/lib/python2.7/site-packages

但是当我运行loaddata命令时,我仍然得到相同的ImportError。有什么想法吗?在


Tags: djangosettingsmacliblibraryframeworkvirtualenvsversions
2条回答

您需要已经在python项目根目录中,并且应该使用python manage.py loaddata;它将setup the environment for you correctly

In addition, manage.py is automatically created in each Django project. manage.py is a thin wrapper around django-admin that takes care of several things for you before delegating to django-admin:

  • It puts your project’s package on sys.path.
  • It sets the DJANGO_SETTINGS_MODULE environment variable so that it points to your project’s settings.py file.
  • It calls django.setup() to initialize various internals of Django.

您应该只使用django-admin.py来创建项目。之后,始终使用manage.py,因为它指向实际的项目设置。在

相关问题 更多 >