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

Django新手求助:模块'home.views'不存在'IndexView'属性

解决Django报错:module 'home.views' has no attribute 'IndexView'

报错的核心是你的home/views.py文件里根本没定义IndexView这个类视图,你修改home/urls.py里的name参数完全没触及问题根源,还额外加了重复的路径规则(两个path('', ...)会导致第一个生效,第二个完全没用)。

下面给你两种直接解决的方案:


方案1:定义类视图(匹配你原本的urls写法)

打开home/views.py,添加类视图代码:

from django.views.generic import TemplateView

# 定义IndexView类视图,指定首页模板路径
class IndexView(TemplateView):
    template_name = 'home/index.html'  # 替换成你实际的首页模板路径,比如templates/home/index.html

然后把home/urls.py改回正确版本(删掉重复的path):

from django.urls import path
from . import views

app_name = 'home'
urlpatterns = [
    path('', views.IndexView.as_view(), name='index')
]

方案2:改用函数视图(更适合新手理解)

如果不想用类视图,也可以写简单的函数视图。打开home/views.py:

from django.shortcuts import render

def index(request):
    # 渲染首页模板
    return render(request, 'home/index.html')  # 同样替换成你的实际模板路径

然后修改home/urls.py,把类视图调用改成函数视图:

from django.urls import path
from . import views

app_name = 'home'
urlpatterns = [
    path('', views.index, name='index')
]

额外说明:你项目根urls.py里的path('', include('home.urls'))和path('home/', include('home.urls'))是合法的(会让根路径和/home/都指向home应用的首页),但如果不需要可以删掉其中一个,不过这不是本次报错的原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 18:42:38