• django路由的反向解析


    什么是路由的反向解析

    我们的路由都是一个匹配关系,对应一个处理的视图函数,

    如果我们的匹配关系发生了变化,那么与之对应的访问地址(可能前端直接url链接,

    也可能是后端的redrict跳转)都需要跟着发生改变

    这是费时费力,因此我们想到了一种动态解析url的方法,通过给相应

    的匹配关系起别名,而让与之对应的链接或者跳转,会根据别名动态解析前面的匹配关系

    这个动态解析url路径的过程就是反向解析

    反向解析实现的方式

    不传参反向解析

    我们先给后端的匹配关系起一个别名,这个别名任意取名都可以

    url(r'^test/', test, name='xxx')

    1、前端实现

      通过在链接处输入{% url '路由的别名xxx' %}

    <a href="{% url 'xxx' %}"></a>
    <form action="{% url 'xxx' %}"></form>

    2、后端实现

      后端通过reverse('别名')

    from django.shortcuts import redirect, reverse
    def tt(request):
        _url = reverse('xxx')
        return redirect(_url)

    传参反向解析

    上面说的都是函数不需要传参的,还有一种需要传参的路由匹配

    url(r'testsas/(d+)', test, name='xxx'),

    1、前端实现

      直接接着后面跟参数就行

    <a href="{% url 'xxx' 1 %}"></a>
    <form action="{% url 'xxx' 9 %}"></form>

    2、后端实现

      在reverse中加入args参数,以元组形式传参

    from django.shortcuts import redirect, reverse
    def tt(request):
        _url = reverse('xxx',args=(1,))
        return redirect(_url)
  • 相关阅读:
    git连接远程GitHub仓库详细总结 for HTTPS协议
    软工课程总结&小黄衫获奖感言
    Yum项目上线实战(网站运维)
    MySQL基础
    Shell基础
    Linux网络基础
    Linux的权限管理操作
    linux自有服务(2)
    Linux自有服务
    Linux基本指令
  • 原文地址:https://www.cnblogs.com/hesujian/p/11285370.html
Copyright © 2020-2023  润新知