【发布时间】:2022-01-05 20:09:27
【问题描述】:
我正在尝试使用 django-admin 命令在虚拟环境中启动一个项目。
点冻结输出: django==2.0.7 (教程的一部分与更新包相同) pytz==2021.3
我得到的 django-admin 检查错误是
Traceback (most recent call last):
File "C:\Program Files\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Program Files\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\Scripts\django-admin.exe\__main__.py", line 7, in <module>
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\__init__.py", line 425, in execute_from_command_line
utility.execute()
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\__init__.py", line 419, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\base.py", line 373, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\base.py", line 417, in execute
output = self.handle(*args, **options)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\commands\check.py", line 63, in handle
self.check(
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\management\base.py", line 438, in check
all_issues = checks.run_checks(
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\checks\registry.py", line 77, in run_checks new_errors = check(app_configs=app_configs, databases=databases)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\core\checks\templates.py", line 29, in check_string_if_invalid_is_string
for conf in settings.TEMPLATES:
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\conf\__init__.py", line 84, in __getattr__
self._setup(name)
File "C:\Users\%CurrentUser%\Documents\Dev\Django\lib\site-packages\django\conf\__init__.py", line 65, in _setup
raise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting TEMPLATES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
这只是在我删除旧项目以使用综合教程重新开始之后开始的。我尝试通过清除 \dev\django\ 文件夹并重新启动来删除 virtualenv。
我已经看到通过编辑 settings.py 或 manage.py 文件来回答其他问题,但我现阶段没有这些问题。
谢谢。
更新#1:尝试修复 python 安装,并对另一个用户执行相同的操作。仍然得到错误。我注意到启动 django-admin.py 和 .exe 唯一的区别是 .exe 先通过 runpy.py
我犯了一个错误,这是 django-admin startproject 的错误
raceback (most recent call last):
File "C:\Program Files\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Program Files\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\users\liam\documents\dev\Django\Scripts\django-admin.exe\__main__.py", line 7, in <module>
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\__init__.py", line 371, in execute_from_command_line
utility.execute()
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\__init__.py", line 365, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\base.py", line 288, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\base.py", line 335, in execute
output = self.handle(*args, **options)
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\commands\startproject.py", line 20, in handle
super().handle('project', project_name, target, **options)
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\management\templates.py", line 117, in handle
django.setup()
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\__init__.py", line 16, in setup
from django.urls import set_script_prefix
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\urls\__init__.py", line 1, in <module>
from .base import (
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\urls\base.py", line 8, in <module>
from .exceptions import NoReverseMatch, Resolver404
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\urls\exceptions.py", line 1, in <module>
from django.http import Http404
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\http\__init__.py", line 5, in <module>
from django.http.response import (
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\http\response.py", line 13, in <module>
from django.core.serializers.json import DjangoJSONEncoder
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\serializers\__init__.py", line 23, in <module>
from django.core.serializers.base import SerializerDoesNotExist
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\core\serializers\base.py", line 6, in <module>
from django.db import models
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\db\models\__init__.py", line 3, in <module>
from django.db.models.aggregates import * # NOQA
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\db\models\aggregates.py", line 5, in <module>
from django.db.models.expressions import Case, Func, Star, When
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\db\models\expressions.py", line 486, in <module>
class TemporalSubtraction(CombinedExpression):
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\db\models\expressions.py", line 487, in TemporalSubtraction
output_field = fields.DurationField()
File "C:\Users\Liam\Documents\Dev\Django\lib\site-packages\django\db\models\fields\__init__.py", line 155, in __init__
if isinstance(choices, collections.Iterator):
AttributeError: module 'collections' has no attribute 'Iterator'
更新#2 我更新到 Django 3.0.0 点冻结输出:
asgiref==3.4.1
Django==3.0
pytz==2021.3
sqlparse==0.4.2
它工作我可以使用 django-admin startproject。我仍然很奇怪它可以与 2.0.7 一起使用,并且以前无法与更新的软件包一起使用。
【问题讨论】:
标签: python python-3.x django