Django配置Views和URLs后页面无法访问(404错误)仅/admin可用
Django配置URL/View后页面404问题排查
以下是针对你遇到的问题的具体排查步骤:
1. 检查项目根URL是否引入了应用路由
如果提供的urls.py是你应用(比如teacherassistant)下的文件,那么项目根目录的urls.py必须通过include导入这个应用的路由规则,否则Django无法识别这些路径:
# 项目根urls.py from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('teacherassistant.urls')), # 替换为你的应用名称 ]
2. 验证模板文件位置是否正确
根据settings.py里的模板配置,你的HTML文件必须放在teacherassistant/templates/目录下,逐一确认:
landing.html、chat.html等模板是否都存在于该目录- 检查文件名是否拼写正确(大小写敏感,比如
Landing.html和landing.html会被视为不同文件)
可以在settings.py里添加打印语句确认BASE_DIR路径是否正确:
# settings.py import os BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) print("项目根目录:", BASE_DIR) # 启动服务器时在控制台查看输出
3. 确认应用已注册到INSTALLED_APPS
因为你设置了APP_DIRS: True,Django只会在已注册应用的templates目录下查找模板,所以必须把你的应用添加到settings.py的INSTALLED_APPS列表:
# settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'teacherassistant', # 你的应用名称 ]
4. 重启开发服务器
修改URL配置或settings.py后,必须重启Django开发服务器,否则新配置不会生效。
5. 核对访问URL的格式
确保浏览器访问的路径和你定义的路由完全一致:
- 首页:
http://localhost:8000/ - 聊天页:
http://localhost:8000/chat/(注意末尾的斜杠,Django默认会重定向不带斜杠的请求,但部分环境下可能失效)
内容的提问来源于stack exchange,提问作者Patrick
相关产品推荐
相关产品推荐

