Django Path转换器自定义及正则代码实例


Posted in Python onMay 29, 2020

Django默认Path转换器

  • str:匹配任何非空字符串,但不含斜杠/,如果你没有专门指定转换器,那么这个是默认使用的;
  • int:匹配0和正整数,返回一个int类型
  • slug:可理解为注释、后缀、附属等概念,是url拖在最后的一部分解释性字符。该转换器匹配任何ASCII字符以及连接符和下划线,比如' building-your-1st-django-site‘;
  • uuid:匹配一个uuid格式的对象。为了防止冲突,规定必须使用破折号,所有字母必须小写,例如'075194d3-6885-417e-a8a8-6c931e272f00‘ 。返回一个UUID对象;
  • path:匹配任何非空字符串,重点是可以包含路径分隔符'/‘。这个转换器可以帮助你匹配整个url而不是一段一段的url字符串

​step1 . 在urls.py 的同级目录下,创建converters.py

class Year_Converters():
  regex = '\d{4}'
  def to_python(self,value):
    return int(value)

  def to_url(self,value):
    # return ;04d' % value
    return str(value)

step 2 注册converters 在同级urls,py 文件

from django.urls import path,register_converter
from . import views
from . import converters

 #注册转换器
 register_converter(converters.Year_Converters,'year')
 urlpatterns = [
  path('show1/<year:arg>', views.show1),
]

正则 在urls,py 文件中,注意参数需要加() ,这里的参数是元组

from django.urls import re_path
urlpatterns = [
  re_path('article/(\d+)/', views.index),
]

正则关键字

re_path(r'^show3/(?P<id>\d{4})/', views.show3)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 字符串格式化代码
Mar 17 Python
Python获取当前时间的方法
Jan 14 Python
python中字符串类型json操作的注意事项
May 02 Python
详解Python 序列化Serialize 和 反序列化Deserialize
Aug 20 Python
matplotlib绘图实例演示标记路径
Jan 23 Python
matplotlib给子图添加图例的方法
Aug 03 Python
Python 类属性与实例属性,类对象与实例对象用法分析
Sep 20 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
Jul 13 Python
详解如何使用Pytest进行自动化测试
Jan 14 Python
详细介绍python类及类的用法
May 31 Python
python数据处理之Pandas类型转换
Apr 28 Python
Python新手如何理解循环加载模块
May 29 #Python
Python新手如何进行闭包时绑定变量操作
May 29 #Python
如何理解python中数字列表
May 29 #Python
Django实现前台上传并显示图片功能
May 29 #Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
May 29 #Python
Django实现后台上传并显示图片功能
May 29 #Python
Python分析微信好友性别比例和省份城市分布比例的方法示例【基于itchat模块】
May 29 #Python
You might like
php第一次无法获取cookie问题处理
2014/12/15 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
PHP简单实现数字分页功能示例
2016/08/24 PHP
PHP之十六个魔术方法详细介绍
2016/11/01 PHP
PHP实现Markdown文章上传到七牛图床的实例内容
2020/02/11 PHP
jquery插件推荐浏览器嗅探userAgent
2014/11/09 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
jQuery图片特效插件Revealing实现拉伸放大
2015/04/22 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
2015/05/25 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
学习使用bootstrap基本控件(table、form、button)
2016/04/12 Javascript
Bootstrap面板(Panels)的简单实现代码
2017/03/17 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
ionic 自定义弹框效果
2017/06/27 Javascript
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
微信小程序实现单列下拉菜单效果
2019/04/25 Javascript
在微信小程序中使用vant的方法
2019/06/07 Javascript
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
2020/05/26 Javascript
简单的抓取淘宝图片的Python爬虫
2014/12/25 Python
python使用BeautifulSoup分析网页信息的方法
2015/04/04 Python
用Python编写脚本使IE实现代理上网的教程
2015/04/23 Python
浅谈pandas筛选出表中满足另一个表所有条件的数据方法
2019/02/08 Python
基于python实现高速视频传输程序
2019/05/05 Python
HTML5 video标签(播放器)学习笔记(二):播放控制
2015/04/24 HTML / CSS
html5简单示例_动力节点Java学院整理
2017/07/07 HTML / CSS
Java servlet面试题
2012/03/04 面试题
J2EE中常用的名词进行解释
2015/11/09 面试题
小学教师的个人自我鉴定
2013/10/26 职场文书
我的中国梦口号
2014/06/16 职场文书
2015年元旦标语大全
2014/12/09 职场文书
mysql多表查询-笔记七
2021/04/05 MySQL
Qt自定义Plot实现曲线绘制的详细过程
2021/11/02 Python
详解Oracle块修改跟踪功能
2021/11/07 Oracle
Android开发之底部导航栏的快速实现
2022/04/28 Java/Android
使用Python开发贪吃蛇游戏 SnakeGame
2022/04/30 Python
基于Python实现nc批量转tif格式
2022/08/14 Python