kd8*_*d88 2 python django django-admin pythonanywhere
(Django版本1.9,Python版本3.4.3,使用虚拟环境制作 mkvirtualenv --python=/usr/bin/python3.4 django19
)
我一直非常密切地关注Django教程,直到第5部分没有任何问题:
https://docs.djangoproject.com/en/1.9/intro/tutorial05/
虽然严格来说,问题与第5部分无关,但请耐心等待.我正在遵循pythonanywhere框架中的教程,因为最终我想在那里托管一个网站.因此,我也在关注pythonanywhere提供的"关注Django教程":
https://help.pythonanywhere.com/pages/FollowingTheDjangoTutorial
虽然在教程的第5部分的建议中没有预料到我的问题.现在问题 - 在Django教程中的重点是:
要检查错误是否确实存在,请使用Admin创建一个日期位于将来的问题,并使用shell检查方法
在链接到shell之后,我尝试(按照链接中的指示)运行:
django-admin shell --plain
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误消息
(django19)19:11 ~/mysite $ django-admin shell --plain
Traceback (most recent call last):
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/core/management/base.py", line 348, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/core/management/base.py", line 391, in execute saved_locale = translation.get_language()
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/utils/translation/__init__.py", line 176, in get_language
return _trans.get_language()
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/utils/translation/__init__.py", line 57, in __getattr__
if settings.USE_I18N:
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/conf/__init__.py", line 55, in __getattr__
self._setup(name)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/conf/__init__.py", line 41, in _setup
% (desc, ENVIRONMENT_VARIABLE))
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.
During handling of the above exception, another exception occurred:
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/core/management/__init__.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/core/management/base.py", line 360, in run_from_argv
connections.close_all()
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/db/utils.py", line 230, in close_all
for alias in self:
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/db/utils.py", line 224, in __iter__
return iter(self.databases)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/utils/functional.py", line 33, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/db/utils.py", line 157, in databases
self._databases = settings.DATABASES
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/conf/__init__.py", line 55, in __getattr__
self._setup(name)
File "/home/me/.virtualenvs/django19/lib/python3.4/site-packages/django/conf/__init__.py", line 41, in _setup
% (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Requested setting DATABASES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
Run Code Online (Sandbox Code Playgroud)
此错误消息建议通过定义变量进行设置DATABASES
(设置为mysite/settings.py
)DJANGO_SETTINGS_MODULE
.那就是我做的:
export DJANGO_SETTINGS_MODULE="${PWD}/mysite/settings.py"
Run Code Online (Sandbox Code Playgroud)
也有所需__init__.py
的文件mysite
和mysite/mysite
目录.但是现在当我运行django-admin
命令时,我得到:
ImportError: No module named 'mysite/settings'
Run Code Online (Sandbox Code Playgroud)
我以后找不到任何文档或帮助.我错过了什么?我需要在其他地方设置一些特别的东西吗?我设置DJANGO_SETTINGS_MODULE
正确吗?将ImportError
使得它听起来像我应该设置DJANGO_SETTINGS_MODULE
到mysite.settings
或类似的东西,但是这也不管用.
创建项目后,使用manage.py
而不是django-admin
运行命令:
python manage.py shell
Run Code Online (Sandbox Code Playgroud)
该manage.py
命令负责处理您的设置.如果使用django-admin
,则必须DJANGO_SETTINGS_MODULE
手动设置.本DJANGO_SETTINGS_MODULE
应该是Python模块,例如mysite.settings
,不喜欢一个文件/path/to/mysite/settings.py
.
归档时间: |
|
查看次数: |
513 次 |
最近记录: |