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标准库内置函数complex介绍
Nov 25 Python
Python生成不重复随机值的方法
May 11 Python
Python 基础知识之字符串处理
Jan 06 Python
深入理解python中的atexit模块
Mar 07 Python
python对DICOM图像的读取方法详解
Jul 17 Python
python3+PyQt5+Qt Designer实现扩展对话框
Apr 20 Python
python2 与 pyhton3的输入语句写法小结
Sep 10 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 Python
python3.7 的新特性详解
Jul 25 Python
TensorFlow dataset.shuffle、batch、repeat的使用详解
Jan 21 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 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 fwrite写入txt文件的时候用 \r\n不能换行的问题
2013/08/06 PHP
php中time()和mktime()方法的区别
2013/09/28 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
PHP的PDO事务与自动提交
2019/01/24 PHP
用js实现的页面关键字密度查询代码
2007/12/27 Javascript
javascript 关闭IE6、IE7
2009/06/01 Javascript
JavaScript Event学习第六章 事件的访问
2010/02/07 Javascript
jQuery版仿Path菜单效果
2011/12/15 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
DOM基础教程之使用DOM + Css
2015/01/20 Javascript
jQuery实现垂直半透明手风琴特效代码分享
2015/08/21 Javascript
Javascript简单实现面向对象编程继承实例代码
2015/11/27 Javascript
JavaScript中的对象继承关系
2016/08/01 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
利用VS Code开发你的第一个AngularJS 2应用程序
2017/12/15 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
layui框架table 数据表格的方法级渲染详解
2018/08/19 Javascript
基于Angularjs-router动态改变Title值的问题
2018/08/30 Javascript
React 组件渲染和更新的实现代码示例
2019/02/21 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
JavaScript代码实现微博批量取消关注功能
2021/02/05 Javascript
python add_argument()用法解析
2020/01/29 Python
Python如何将模块打包并发布
2020/08/30 Python
纯css实现照片墙3D效果的示例代码
2017/11/13 HTML / CSS
关于 HTML5 的七个传说小结
2012/04/12 HTML / CSS
匡威德国官网:Converse德国
2019/01/26 全球购物
ddl,dml和dcl的含义
2016/05/08 面试题
大学生自我鉴定
2013/12/08 职场文书
小学一年级评语大全
2014/04/22 职场文书
低碳环保演讲稿
2014/08/28 职场文书
感动中国何玥观后感
2015/06/02 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
AI:如何训练机器学习的模型
2021/04/16 Python