Django(命名URL和URL反向解析)

本文详细介绍了Django框架中反向解析URL的方法,包括如何定义URL别名、在模板和视图中使用别名获取具体URL路径,以及如何传递参数。同时,文章还解释了如何使用命名空间避免不同应用下URL别名冲突的问题。

day67

参考:

https://www.cnblogs.com/liwenzhou/articles/8271147.html#autoid-1-4-0

反向解析URL
            本质上就是给url匹配模式起别名,然后用过别名拿到具体的URL路径
            
            1. 怎么起别名?
                在url匹配模式中,定义name="别名"
            2. 如何使用?
                1. 在模板语言里面使用:
                    {% url "别名" %}  --> 得到具体的URL路径
                2. 在视图中如何使用:
                    from django.urls import reverse
                    
                    reverse("别名")  --> 得到具体的URL路径
            3. 如何传参数?
                1. 模板语言中:
                    {% url "别名" 2018 "nb" %}
                2. 视图函数中
                    传位置参数:
                        reverse("别名", args=(2018, "nb"))
                
                    传关键字参数:
                        reverse("别名" kwargs={"year": 2018, "title": "nb"})
            4. namespace
                为了防止不同的app下面的url匹配模式有重复的别名

 

反向解析URL

视图函数中

 无参数

 

有参数

reverse("别名" kwargs={"year": 2018, "title": "nb"})

 

模板语言中

 {% url "别名" 2018 "nb" %}

命名空间模式

即使不同的APP使用相同的URL名称,URL的命名空间模式也可以让你唯一反转命名的URL。

参考:https://www.cnblogs.com/liwenzhou/articles/8271147.html#autoid-1-5-0

 

转载于:https://www.cnblogs.com/112358nizhipeng/p/10358053.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值