Python 在Django中使用shell
我是Django un的新手,我想为Django Web poll应用程序编写一个测试 但我有一个错误:Python 在Django中使用shell,python,django,Python,Django,我是Django un的新手,我想为Django Web poll应用程序编写一个测试 但我有一个错误: devuser@localhost:~/Django-apps/poolApp$ django-admin shell --plain --no-startup Traceback (most recent call last): File "/usr/local/bin/django-admin", line 9, in <module> load_entry_po
devuser@localhost:~/Django-apps/poolApp$ django-admin shell --plain --no-startup
Traceback (most recent call last):
File "/usr/local/bin/django-admin", line 9, in <module>
load_entry_point('Django==1.8.3', 'console_scripts', 'django-admin')()
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/core/management/base.py", line 405, in run_from_argv
connections.close_all()
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/db/utils.py", line 258, in close_all
for alias in self:
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/db/utils.py", line 252, in __iter__
return iter(self.databases)
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/utils/functional.py", line 60, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/db/utils.py", line 151, in databases
self._databases = settings.DATABASES
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/usr/local/lib/python2.7/dist-packages/Django-1.8.3-py2.7.egg/django/conf/__init__.py", line 42, 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模块或调用设置。配置使用manage.py,而不是DJANGO admin。使用manage.py,而不是DJANGO admin。
django-admin shell --plain --no-startup --pythonpath "." --settings "myproject.settings"
当你在django应用程序的根目录下时
但是,建议改为使用manage.py shell或django_扩展的惊人shell_plus
django-admin shell --plain --no-startup --pythonpath "." --settings "myproject.settings"
当你在django应用程序的根目录下时
但是,建议改为使用manage.py shell或django_扩展的惊人shell_plus是否设置了数据库?你建立数据库了吗?