Python-Django的URL反向解析


url反向解析


url反向解析是指在视图或模板中,用path定义的名称来动态查找或计算出相应的路由。

path函数的语法

path(route, views, name='别名')
path(route, views.page_view, name='pagr_url')

根据path中的 ’name=‘ 关键字传参给url确定了唯一确定的名字,在模板或视图中,可以通过这个名字反向推断出此url信息

模板中 - 通过url标签实现地址的反向解析

{% url '别名' %}
{% url '别名' '参数值1' '参数值2' %}
ex
{% url 'pagen' '400' %}
{% url 'person' age='18' name='ztz' %}

样例:

path('sport/', views.sport_view, name='sp'),
<a href="{% url 'sp' %}">体育频道</a>

视图中 - 可调用django的 reverse 方法进行反向解析

from django.urls import reverse
reverse('别名', args=[], kwargs={})
ex
print(reverse('pagen', args=[300]))
print(reverse('person',kwargs={'name':'xixi','age':18}))

举例:

def music_view(request):
    from django.urls import reverse
    url = reverse('sp')
    # 跳转
    return HttpResponseRedirect(url)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值