Pythonywhere上的Django教程:运行Django管理shell时遇到问题

Pythonywhere上的Django教程:运行Django管理shell时遇到问题,python,django,django-admin,pythonanywhere,Python,Django,Django Admin,Pythonanywhere,(Django版本1.9,Python版本3.4.3,使用由mkvirtualenv--Python=/usr/bin/python3.4 django19制作的虚拟环境) 在第5部分之前,我一直在密切关注Django教程,没有任何问题: 虽然严格地说,问题不在于第五部分,但请容忍我。我在PythonyWhere框架中遵循教程,因为最终我想在那里主持一个网站。因此,我也遵循Pythonywhere提供的“跟随Django教程”: 虽然我的问题在教程第5部分的建议中没有预料到。现在,问题出在D

(Django版本1.9,Python版本3.4.3,使用由
mkvirtualenv--Python=/usr/bin/python3.4 django19制作的虚拟环境)

在第5部分之前,我一直在密切关注Django教程,没有任何问题:

虽然严格地说,问题不在于第五部分,但请容忍我。我在PythonyWhere框架中遵循教程,因为最终我想在那里主持一个网站。因此,我也遵循Pythonywhere提供的“跟随Django教程”:

虽然我的问题在教程第5部分的建议中没有预料到。现在,问题出在Django教程中的某一点上,该教程内容如下:

要检查bug是否真的存在,请使用管理员创建一个日期在将来的问题,并使用

在链接到shell之后,我尝试(按照链接中的说明)运行:

但是,我收到以下错误消息

(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.
此错误消息建议通过定义变量
DJANGO\u settings\u MODULE
来设置
数据库(在
mysite/settings.py
中设置)。我就是这么做的:

export DJANGO_SETTINGS_MODULE="${PWD}/mysite/settings.py"
mysite
mysite/mysite
目录中还有所需的
\uuuu init\uuuuu.py
文件。但是现在,当我运行
django admin
命令时,我得到:

ImportError: No module named 'mysite/settings'

我以后找不到更多的文档或帮助。我错过了什么?我需要在别的地方设置一些特别的东西吗?我是否正确设置了DJANGO设置模块?
ImportError
听起来像是我应该将
DJANGO\u设置\u模块设置为
mysite.SETTINGS
或类似的设置,但这也不起作用。

创建项目后,使用
manage.py
而不是
DJANGO admin
来运行命令:

python manage.py shell

manage.py
命令负责您的设置。如果使用
django admin
,则必须手动设置
django\u设置\u模块。
DJANGO\u SETTINGS\u模块
应该是Python模块,例如
mysite.SETTINGS
,而不是像
/path/to/mysite/SETTINGS.py这样的文件

请确保项目位于Python导入搜索路径中。试试这个

>>import sys
>>sys.path
如果未列出项目的路径/目录,则需要执行以下操作

>>sys.path.append('/path/to/my/django/project')
然后分配DJANGO_设置_模块,如下所示:

$export DJANGO_SETTINGS_MODULE=mysite.settings

$export DJANGO_SETTINGS_MODULE=mysite.settings