Django

对于Django反向解析的简单理解

在反向解析和命名空间之前我们先来说说URLS硬编码,用django开发应用的时候,可以完全是在urls.py 中硬编码配置地址,在views.py中HttpResponseRedirect()也是硬编码转向地址,当然在template 中也是一样了,这样带来一个问题,如果在urls.py 中修改了某个页面的地址(也就是说更改路由系统中对应的路由分发),那么所有的地方(views.py和template中)都要修改。来看下面的模板文件index.html中,我们到的链接硬编码成这样子:

<li><a href="/goods/index/">url</a></li>

如果使用软编码之后,无论怎么更改路由系统中的路由分发,只有对应的namespace与name属性值不变,就不必修改在views.py和template中的url,也就是说

<li><a href="{% url "good:index" %}">url反向解析</a></li>

在templates中更改为软编码之后,其实在templates,index.html文件生成的时候,仍然是

<li><a href="/goods/index/">url反向解析</a></li>

在根级路由,app指的是一个应用名
在对应的app应用的urls.py中添加namespace = '[应用名称]'如下
在这里插入图片描述

子级路由
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值