You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django配置路由报错No module named 'learning_logs.urls'如何解决

问题修复方案

这个报错的核心原因是Django无法定位到learning_logs.urls模块,按以下步骤逐一排查修复即可:

  • 第一步:确认应用已正确注册
    打开项目配置目录下的settings.py,找到INSTALLED_APPS配置项,确认learning_logs应用已加入列表,参考配置如下:
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        # 注册自己的应用,两种写法选一种即可
        'learning_logs',
        # 'learning_logs.apps.LearningLogsConfig',
    ]
    
  • 第二步:确认应用下存在urls.py文件
    检查项目目录结构,learning_logs应用文件夹必须和manage.py同级,且文件夹内必须存在urls.py文件,标准结构参考:
    项目根目录/
    ├── manage.py
    ├── 项目配置文件夹/ # 存放根urls.py、settings.py的目录
    └── learning_logs/
        ├── __init__.py
        ├── apps.py
        ├── views.py
        ├── models.py
        └── urls.py # 缺失这个文件就会触发你遇到的报错
    
    如果漏建了这个文件,直接在learning_logs目录下新建即可,基础模板内容如下:
    from django.urls import path
    from . import views
    
    app_name = 'learning_logs' # 新版本Django建议配置应用命名空间,避免路由重名
    urlpatterns = [
        # 在这里添加你的应用路由,例如首页路由示例
        # path('', views.index, name='index'),
    ]
    
  • 第三步:清理根路由文件的冗余代码
    你当前的根urls.py重复导入了两次path,虽然不会直接触发报错,但可以精简为:
    from django.contrib import admin
    from django.urls import include, path
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('learning_logs.urls')),
    ]
    
  • 额外检查项:确认learning_logs文件夹名没有拼写错误,不要把应用文件夹放到项目配置文件夹内部,否则Python的导入机制无法找到对应模块。
    所有修改完成后重启Django开发服务,报错即可解决。

内容的提问来源于stack exchange,提问作者szhang04

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 05:24:28