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

Django项目中HTML链接跳转另一HTML文件路径错误如何解决?

Django项目模板间跳转问题解决方案

问题根因

出现跳转失败的核心原因是:Django的templates目录仅用于存储后端渲染用的模板文件,不会直接将目录的文件系统路径映射为对外可访问的URL路径,直接写死相对路径跳转templates内的子文件无法被Django路由系统识别,因此会返回404错误。

解决步骤

步骤1:绑定目标页面的访问路由

打开你项目对应app下的urls.py文件,为test.html新增一条路由规则,示例代码如下:

from django.urls import path
from django.views.generic import TemplateView

urlpatterns = [
    # 原有首页路由,可根据你的实际配置调整
    path('', TemplateView.as_view(template_name='homepage_template.html'), name='homepage'),
    # 新增test.html的访问路由,自定义路径、name标识即可
    path('test/', TemplateView.as_view(template_name='homepage_photos/test.html'), name='test_page'),
]

步骤2:修改模板中的跳转链接

将homepage_template.html里原有的跳转a标签,替换为Django内置的url模板标签生成跳转路径,不要写死相对路径:

<!-- 替换前 -->
<!-- <a href="homepage_photos/test.html"> text!</a> -->
<!-- 替换后 -->
<a href="{% url 'test_page' %}"> text!</a>

注意事项

  • 不要尝试直接暴露templates目录的对外访问权限,会存在严重的安全风险,所有模板页面都需要通过路由绑定后再提供访问
  • 如果test.html中引用了CSS、图片等静态资源,需要将静态资源存放到Django约定的static目录下,引用时使用{% static '资源路径' %}模板标签生成路径,不要直接写相对路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 10:45:05