zoukankan      html  css  js  c++  java
  • 021:自定义path(或url)转换器

    1、实现如下需求:用户可以根据articles/list/方式获取文章,其中文章分类是采用如下分类,实例如下:

    • 第一种:获取python分类下的文章:/article/python/
    • 第二种:获取python和django分类下的文章:/article/python+django
    • 第三种:获取python、django和flask分类下的文章:/article/python+django+flask             ……以此类推

    步骤一:

    步骤二:

    步骤三:

     2、实现如下需求:

    • 在“文章分类”参数传到视图函数之前要把这些分类分开来存储到列表中,比如:参数是:python+django+flask,那么变化后的结果是['python','django','flask'];
    • 在使用reverse反转的时候,限制传递“文章分类“的参数应该是一个列表,并将这个列表变成:python+django+flask(和上面相反的过程);

    第一步:

    第二步:

    第三步:

    第四步:

    总结一下:自定义 url 转换器按照以下五个步骤来走就可以了:

    1. 定义一个类;
    2. 在类中定义一个属性 regex ,这个属性是用来保存 url 转换器规则的正则表;
    3. 实现 to_python(self,value) 方法,这个方法是将 url 中的值转换一下,然后传给视图函数的;
    4. 实现 to_url(self,value) 方法,这个方法是在做 url 反转的时候,将传进来的参数转换后拼接成一个正确的url;
    5. 将定义好的转换器,注册到django中;

  • 相关阅读:
    C#串口通信程序实现无感知签到与答题
    C# 调用adb command 读取手机型号和IMEI
    sql 截取字符串
    .NET下的ORM框架有哪些
    linq-to-sql实现left join,group by,count
    C# 生成二维码
    数据库面试题.net
    .net面试中的一些常见问题与答案
    Jquery判断其中任意一个文本框的值是否被修改
    矩阵乘法的MPI并行计算
  • 原文地址:https://www.cnblogs.com/zheng-weimin/p/10162166.html
Copyright © 2011-2022 走看看