Django URL参数Template反向解析


Posted in Python onNovember 24, 2020

一、 URL参数在view中传递

1、带参数名:通过named group方式传递指定参数,语法为: (?P<name>pattern), name 为传递参数的名称,pattern代表所要匹配的模式。如下:

url(r'^articles/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/$', views.month_archive)

中:year,month为参数名,而后面紧跟的则代表正则表达匹配的模式。

比如某个具体的URL为:http://0.0.0.0:8081/kingadmin/2017/09/(黄色部分为域名),对应view处理函数如下:

def month_archive(request,year,month):

  print(year,month)

return render(request,"kingadmin/index.html",locals())

其中:app_name 和 model_name对应url中传递过来的参数值year值为:2017,month值为9

2、不带参数名:语法为: (r'pattern1/pattern2/'), pattern代表所要匹配的模式。如下:

url(r'^(\w+)/(\w+)/$', views.table_data_list)

比如某个具体的URL为:http://0.0.0.0:8081/kingadmin/crm/customer/(黄色部分为域名),对应view处理函数如下:

def table_data_list(request,app_name,model_name):

admin_obj = base_admin.site.registered_sites[app_name][model_name]

return render(request,"kingadmin/table_data_list.html",locals())

其中:app_name 和 model_name对应url中传递过来的参数值app_name值为:crm,model_name值为customer

二、Templates href格式

href="{% url ‘name' params %}" rel="external nofollow"

其中:name为url.py 文件中某个url配置的name别名,params某个url对应的各个参数具体值,使用如下:

#在url.py的url中添加一个url,name参数为:name='app-views-func'
urlpatterns = [
url(r'^(\w+)/(\w+)/(\d+)/delete/$', views.table_delete,name='table_delete'),]#
href="{% url 'table_delete' 3 2 1 %}" rel="external nofollow" #url中有三个参数(\w+)/(\w+)/(\d+),所以要传入三个具体的参数值3 2 1
生成的url如下:http://0.0.0.0:8081/3/2/1/delete/

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

Python 相关文章推荐
python访问sqlserver示例
Feb 10 Python
python列表操作使用示例分享
Feb 21 Python
使用Python的Flask框架表单插件Flask-WTF实现Web登录验证
Jul 12 Python
python使用arcpy.mapping模块批量出图
Mar 06 Python
Python基于Pymssql模块实现连接SQL Server数据库的方法详解
Jul 20 Python
基于Python中capitalize()与title()的区别详解
Dec 09 Python
Python爬虫的两套解析方法和四种爬虫实现过程
Jul 20 Python
对tf.reduce_sum tensorflow维度上的操作详解
Jul 26 Python
python 实现批量xls文件转csv文件的方法
Oct 23 Python
Python中实现单例模式的n种方式和原理
Nov 14 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
Apr 19 Python
Python3实现个位数字和十位数字对调, 其乘积不变
May 03 Python
python3爬虫中引用Queue的实例讲解
Nov 24 #Python
python3爬虫中多线程的优势总结
Nov 24 #Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
Nov 24 #Python
python 如何停止一个死循环的线程
Nov 24 #Python
python将下载到本地m3u8视频合成MP4的代码详解
Nov 24 #Python
Python做图像处理及视频音频文件分离和合成功能
Nov 24 #Python
Python调用Redis的示例代码
Nov 24 #Python
You might like
PHP CURL模拟GET及POST函数代码
2010/04/25 PHP
PHP可变函数的使用详解
2013/06/14 PHP
深入理解PHP中的Session和Cookie
2013/06/21 PHP
PHP 常用的header头部定义汇总
2015/06/19 PHP
Yaf框架封装的MySQL数据库操作示例
2019/03/06 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
jquery实现简单文字提示效果
2015/12/02 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
jQuery中的on与bind绑定事件区别实例详解
2017/02/28 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
2017/06/15 Javascript
Vue header组件开发详解
2018/01/26 Javascript
基于Vuex无法观察到值变化的解决方法
2018/03/01 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
Vue 中如何正确引入第三方模块的方法步骤
2019/05/05 Javascript
vuex管理状态仓库使用详解
2020/07/29 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
Python转码问题的解决方法
2008/10/07 Python
Python爬虫框架Scrapy实战之批量抓取招聘信息
2015/08/07 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
python之生产者消费者模型实现详解
2019/07/27 Python
Python全栈之列表数据类型详解
2019/10/01 Python
python连接mongodb集群方法详解
2020/02/13 Python
python和c语言哪个更适合初学者
2020/06/22 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
Html5移动端获奖无缝滚动动画实现示例
2018/06/25 HTML / CSS
Beach Bunny Swimwear官网:设计师泳装和性感比基尼
2019/03/13 全球购物
nohup的用法
2012/11/26 面试题
公司年会主持词
2014/03/22 职场文书
个人承诺书
2014/03/26 职场文书
工作检讨书怎么写
2015/01/23 职场文书
机关工会工作总结2015
2015/05/26 职场文书
孙振耀退休感言
2015/08/01 职场文书
详细介绍python类及类的用法
2021/05/31 Python