PYTHON 3.6.0 和 DJANGO 3.5.0 'module'对象在服务器运行 django 网站时不可迭代



所以我要用python manage.py runserver运行我的Django项目,但突然出现了这样的错误:

Exception in thread django-main-thread:
Traceback (most recent call last):
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangourlsresolvers.py", line 590, in url_patterns
iter(patterns)
TypeError: 'module' object is not iterable
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:UsersUSERAppDataLocalProgramsPythonPython36libthreading.py", line 916, in _bootstrap_inner
self.run()
File "C:UsersUSERAppDataLocalProgramsPythonPython36libthreading.py", line 864, in run
self._target(*self._args, **self._kwargs)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangoutilsautoreload.py", line 53, in wrapper
fn(*args, **kwargs)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocoremanagementcommandsrunserver.py", line 117, in inner_run
self.check(display_num_errors=True)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocoremanagementbase.py", line 395, in check
include_deployment_checks=include_deployment_checks,
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocoremanagementbase.py", line 382, in _run_checks
return checks.run_checks(**kwargs)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocorechecksregistry.py", line 72, in run_checks
new_errors = check(app_configs=app_configs)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocorechecksurls.py", line 40, in check_url_namespaces_unique
all_namespaces = _load_all_namespaces(resolver)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangocorechecksurls.py", line 57, in _load_all_namespaces
url_patterns = getattr(resolver, 'url_patterns', [])
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangoutilsfunctional.py", line 48, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "D:ITHB MITTUGAS AKHIRPRACTICEprogramDjango Applicationvenvlibsite-packagesdjangourlsresolvers.py", line 597, in url_patterns
raise ImproperlyConfigured(msg.format(name=self.urlconf_name))
django.core.exceptions.ImproperlyConfigured: The included URLconf 'project_settings.urls' does not appear to have any patterns in it. If you see valid patterns in the file then the issue is probably caused by a circular import.

还有我的项目。settings.urls

"""project_settings URL Configuration
"""
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('', include('ml_app.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

这是我的ml_app.urls

"""project_settings URL Configuration """ 
from django.contrib import admin 
from django.urls import path, include 
from . import views 
from .views import about, index, predict_page,cuda_full

app_name = 'ml_app' handler404 = views.handler404

urlpatterns = [
path('', index, name='home'),
path('about/', about, name='about'),
path('predict/', predict_page, name='predict'),
path('cuda_full/',cuda_full,name='cuda_full'), 
]

有人知道如何修复那个错误吗?这对我的期末考试非常重要

您有一些循环导入。这意味着您可能使用了从A到B,然后从B到A的导入。您必须检查依赖关系。有时,若您使用一个函数,它会导入模型,然后将相同的函数导入该模型,它会无限导入。请在代码中检查它。顺便说一句,不要在同一文件中导入views,然后导入来自该views的每个View。这可能会混淆

from django.contrib import admin 
from django.urls import path, include 
from ml_app.views import about, index, predict_page,cuda_full, handler404

查看这篇文章,了解更多关于这个问题的信息。

我认为你的应用程序urls.py应该是这样的:

"""project_settings URL Configuration """ 
from django.contrib import admin 
from django.urls import path, include  
from your-app-name import views  

app_name = 'ml_app' handler404 = views.handler404

urlpatterns = [
path('', views.index, name='home'),
path('about/', views.about, name='about'),
path('predict/', views.predict_page, name='predict'),
path('cuda_full/',views.cuda_full,name='cuda_full'), 
]

最新更新