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

Django页面跳转异常:landing_page跳转时路径拼接错误如何解决

问题原因

你写的href='xxx/another_page.html'属于相对路径,浏览器会默认在当前页面的访问路径(也就是localhost/landing_page/)后拼接你填写的路径,所以最终访问地址才会多出/landing_page/前缀。

解决方法

方法1:直接修改为根路径绝对地址

在路径开头添加斜杠/即可,修改后的代码如下:

<a href='/xxx/another_page.html'> click here </a>

开头加/后,浏览器会直接从域名根路径开始拼接地址,就能跳转到你预期的localhost/xxx/another_page.html。

方法2(Django官方推荐规范写法):使用URL反向解析

这种方法后续修改路由路径时不需要挨个调整模板内的链接,可维护性更强,操作步骤如下:

  • 第一步:在项目/对应应用的urls.py文件中,给目标路由添加name参数,示例:
# urls.py
from django.urls import path
from . import views

urlpatterns = [
    # 其他现有路由
    path('xxx/another_page.html', views.xxx_view, name='another_page'),
]
  • 第二步:把模板内的a标签改为用Django模板标签生成地址:
<a href='{% url "another_page" %}'> click here </a>

Django会自动根据urls.py的配置生成正确的访问地址,不会出现路径拼接错误的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 04:27:00