Django运行报错

C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\python.exe E:\djangoProject\manage.py runserver 8000 
Performing system checks...

Exception ignored in thread started by: <function check_errors.<locals>.wrapper at 0x000001DD1BAD6DC0>
Traceback (most recent call last):
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\utils\autoreload.py", line 228, in wrapper
    fn(*args, **kwargs)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management\commands\runserver.py", line 124, in inner_run
    self.check(display_num_errors=True)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management\base.py", line 356, in check
    all_issues = self._run_checks(
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management\base.py", line 346, in _run_checks
    return checks.run_checks(**kwargs)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\checks\registry.py", line 81, in run_checks
    new_errors = check(app_configs=app_configs)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\checks\urls.py", line 16, in check_url_config
    return check_resolver(resolver)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\checks\urls.py", line 26, in check_resolver
    return check_method()
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\urls\resolvers.py", line 254, in check
    for pattern in self.url_patterns:
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\urls\resolvers.py", line 405, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\utils\functional.py", line 35, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\site-packages\django\urls\resolvers.py", line 398, in urlconf_module
    return import_module(self.urlconf_name)
  File "C:\Users\xxklpz\AppData\Local\Programs\Python\Python39\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "E:\djangoProject\djangoProject\urls.py", line 29, in <module>
    path(r'^admin/', admin.site.urls),
TypeError: path() takes 1 positional argument but 2 were given


TypeError: path() takes 1 positional argument but 2 were given

你这里 path(r'^admin/', admin.site.urls) 使用了正则表达式,正则表达式对应的是re_path,而不是path。
你可以改成:path('admin/', admin.site.urls)re_path(r'^admin/', admin.site.urls)

【以下回答由 GPT 生成】

根据报错信息,我们可以看到这是一个AttributeError异常,提示'AdminSite' object has no attribute '_registry',也就是AdminSite对象没有_registry属性。

根据报错信息,这个错误是在django.contrib.admin.sites.py文件中的get_urls()方法中发生的,而这个方法是用来获取admin站点的URL的。

可能的原因是在你的Django项目中使用了admin站点,而在配置admin站点时出现了问题。

解决这个问题的步骤如下:

  1. 检查你的Django项目的settings.py文件中是否正确配置了admin模块:

打开settings.py文件,检查是否有以下导入语句和配置代码:

```python from django.contrib import admin

# ...

# 注册admin站点 admin.autodiscover()

# ...

# admin站点的URL配置 urlpatterns += [ path('admin/', admin.site.urls), ] ```

  1. 确保你的Django版本和admin站点的版本匹配:

检查你的Django版本和admin站点的版本是否一致,可以通过以下命令查看:

shell python -m django --version

然后,在项目的根目录下执行以下命令安装最新版本的admin站点:

shell pip install django-admin

  1. 检查admin站点的配置文件是否正确导入:

settings.py文件中检查INSTALLED_APPS配置项是否包含了django.contrib.admin,如果没有,请添加它:

python INSTALLED_APPS = [ 'django.contrib.admin', # ... ]

如果以上步骤都没有解决问题,请提供更多报错信息,以便更好地帮助你解决问题。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

注意这里

TypeError: path() takes 1 positional argument but 2 were given

参考GPT:

根据提供的错误信息来看,出现了一个TypeError,具体是在E:\djangoProject\djangoProject\urls.py文件的第29行出现的错误。

错误信息显示调用了path()函数,但是给出了2个参数,而path()函数只接受一个位置参数。

要解决这个错误,可以检查E:\djangoProject\djangoProject\urls.py文件的第29行,确保path()函数只有一个参数。如果有多个参数,可以尝试修改代码,只保留一个参数。

另外,还要确保path()函数的导入路径正确,可以检查导入语句from django.urls import path是否正确,路径是否正确。