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

Django访问根路径出现404错误,请求技术协助

问题解决方法

你的404错误和代码里的几处错误直接相关,以下是具体修复步骤:

1. 修正urls.py的路由配置

存在的错误:

  • router.register('/posts', NotesViewset) 中路径开头多了斜杠,会导致Django路由匹配异常
  • path(' ', include(router.urls)) 使用空格作为路径,而非空路径,使得根路径http://127.0.0.1:8000/无法匹配到任何规则

修改后的urls.py:

from django.contrib import admin
from django.urls import path, include
from Notes.views import NotesViewset
from rest_framework.routers import DefaultRouter

router = DefaultRouter()
# 移除路径开头的斜杠
router.register('posts', NotesViewset)

urlpatterns = [
    path('admin/', admin.site.urls),
    # 改为空字符串,匹配根路径
    path('', include(router.urls))
]

2. 修正views.py的视图类属性

存在的错误:

NotesViewset中使用了serializer属性,而DRF的ModelViewSet要求的正确属性名是serializer_class,拼写错误会导致视图无法完成数据序列化

修改后的views.py:

from django.shortcuts import render
from .models import Note
from rest_framework import viewsets
from .serializers import NoteSerializer


class NotesViewset(viewsets.ModelViewSet):
    # 修正属性名为serializer_class
    serializer_class = NoteSerializer
    queryset = Note.objects.all()

完成以上修改后,重启Django服务:

  • 访问http://127.0.0.1:8000/posts/即可查看笔记接口
  • 访问根路径http://127.0.0.1:8000/会显示DRF自动生成的API根页面

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 18:05:18