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 27 Python
利用Fn.py库在Python中进行函数式编程
Apr 22 Python
Python的装饰器使用详解
Jun 26 Python
python实现简单神经网络算法
Mar 10 Python
python中logging模块的一些简单用法的使用
Feb 22 Python
pyqt5 实现在别的窗口弹出进度条
Jun 18 Python
pytorch程序异常后删除占用的显存操作
Jan 13 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
Feb 27 Python
使用Pytorch搭建模型的步骤
Nov 16 Python
如何用Python提取10000份log中的产品信息
Jan 14 Python
详解Python Celery和RabbitMQ实战教程
Jan 20 Python
Python基于Tkinter开发一个爬取B站直播弹幕的工具
May 06 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计算函数执行时间的方法
2015/03/20 PHP
Symfony2实现从数据库获取数据的方法小结
2016/03/18 PHP
JavaScript 精粹读书笔记(1,2)
2010/02/07 Javascript
23个超流行的jQuery相册插件整理分享
2011/04/25 Javascript
jQuery过滤选择器:not()方法使用介绍
2014/04/20 Javascript
JavaScript编写推箱子游戏
2015/07/07 Javascript
jQuery unbind()方法实例详解
2016/01/19 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
2017/07/17 Javascript
微信小程序从注册账号到上架(图文详解)
2019/07/17 Javascript
vue实现在进行增删改操作后刷新页面
2020/08/05 Javascript
JavaScript 闭包的使用场景
2020/09/17 Javascript
javascript实现打砖块小游戏(附完整源码)
2020/09/18 Javascript
Python随机数random模块使用指南
2016/09/09 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
Django使用httpresponse返回用户头像实例代码
2018/01/26 Python
自学python的建议和周期预算
2019/01/30 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
Python3之乱码\xe6\x97\xa0\xe6\xb3\x95处理方式
2020/05/11 Python
Python实现手势识别
2020/10/21 Python
eBay英国购物网站:eBay.co.uk
2019/06/19 全球购物
历史学专业毕业生求职信
2013/09/27 职场文书
计算机应用专业推荐信
2013/11/13 职场文书
小学三八妇女节活动方案
2014/03/16 职场文书
售房协议书
2014/08/19 职场文书
党员剖析材料范文
2014/09/30 职场文书
维稳工作情况汇报
2014/10/27 职场文书
党支部承诺书
2015/01/20 职场文书
2015年七一建党节慰问信
2015/03/23 职场文书
团拜会主持词
2015/07/04 职场文书
你为什么是穷人?可能是这5个缺点造成
2019/07/11 职场文书
Python快速优雅的批量修改Word文档样式
2021/05/20 Python
Mysql中where与on的区别及何时使用详析
2021/08/04 MySQL
深入浅出的讲解:信号调制到底是如何实现的
2022/02/18 无线电
TV动画《八十龟酱观察日记》第四季宣传PV公布
2022/04/06 日漫