Django报错求助:找不到listings.urls模块
错误信息
Exception in thread django-main-thread:
Traceback (most recent call last):
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.1776.0_x64__qbz5n2kfra8p0\lib\threading.py", line 1016, in _bootstrap_inner
self.run()
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.1776.0_x64__qbz5n2kfra8p0\lib\threading.py", line 953, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Acer\Desktop\Project_Real\venv\lib\site-packages\django\utils\autoreload.py", line 64, in wrapper
fn(*args, **kwargs)
File "C:\Users\Acer\Desktop\Project_Real\venv\lib\site-packages\django\core\checks\registry.py", line 88, in run_checks
new_errors = check(app_configs=app_configs, databases=databases)
File "C:\Users\Acer\Desktop\Project_Real\venv\lib\site-packages\django\core\checks\urls.py", line 42, in check_url_namespaces_uniqueFile "C:\Users\Acer\Desktop\Project_Real\venv\lib\site-packages\django\urls\resolvers.py", line 715, in url_patterns
......
ModuleNotFoundError: No module named 'listings.urls'
错误核心提示:找不到名为'listings.urls'的模块
排查步骤
- 确认文件存在:检查
listings应用目录下是否有urls.py文件,文件名拼写要完全一致(注意大小写,虽然Windows系统不区分,但代码引用必须匹配)。 - 确认app已注册:打开项目根目录的
settings.py,查看INSTALLED_APPS列表,确保已经添加'listings'。 - 检查URL引用代码:在项目根
urls.py中,确认引用listings.urls的代码格式正确,示例:
同时确保from django.urls import path, include urlpatterns = [ # 其他路由配置 path('listings/', include('listings.urls')), ]listings目录下有__init__.py文件(Django 3.2及以上版本可省略,但旧版本必须存在)。 - 验证虚拟环境:确认当前运行项目使用的是正确的虚拟环境,避免因环境不一致导致模块找不到。
- 检查目录路径:如果
listings不在项目根目录下,需要确保它的父目录被添加到Python的sys.path中,或者调整项目结构保持app在根目录下(更推荐后者)。
内容的提问来源于stack exchange,提问作者Aarambha

