Django urls.py重构及参数传递详解


Posted in Python onJuly 23, 2019

1. 内部重构#

Django urls.py重构及参数传递详解

2. 外部重构#

website/blog/urls.py

Django urls.py重构及参数传递详解

website/website/urls.py

Django urls.py重构及参数传递详解

3. 两种参数处理方式 #

1. blog/index/?id=1234&name=bikmin#

#urls.py

url(r'^blog/index/$','get_id_name')

#views.py

from django.http import HttpResponse
from django.template import loader,Context

def get_id_name(request):
  html = loader.get_template("index.html")
  id = request.GET.get("id")
  name = request.GET.get("name")
  context = Context({"id":id,"name":name})
  return HttpResponse(html.render(context))

#index.html

<body>
  <li>id:{{ id }}</li>
  <li>name:{{ name }}</li>
</body>

效果如下

Django urls.py重构及参数传递详解

2. blog/index/1234/bikmin#

#urls.py

url(r'^blog/index/(\d{4})/(\w+)/$','blog.views.get_id_name')

#views.py

from django.http import HttpResponse
from django.template import loader,Context

def get_id_name(request,p1,p2):
  html = loader.get_template("index.html")
  context = Context({"id":p1,"name":p2})
  return HttpResponse(html.render(context))

#index.html

<body>
  <li>id:{{ id }}</li>
  <li>name:{{ name }}</li>
</body>

效果如下:

Django urls.py重构及参数传递详解

3.blog/index/1234/bikmin (和-2不一样的在于views.py,接收的参数名是限定的)#

#urls.py

#限定id,name参数名
url(r'blog/index/(?P<id>\d{4})/(?P<name>\w+)/$','get_id_name')

#views.py

from django.http import HttpResponse
from django.template import loader,Context

def get_id_name(request,id,name):
  html = loader.get_template("index.html")
  context = Context({"id":id,"name":name})
  return HttpResponse(html.render(context))

#index.html

<body>
  <li>id:{{ id }}</li>
  <li>name:{{ name }}</li>
</body>

效果如下

Django urls.py重构及参数传递详解

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

Python 相关文章推荐
Python爬取三国演义的实现方法
Sep 12 Python
详解python eval函数的妙用
Nov 16 Python
Python3使用正则表达式爬取内涵段子示例
Apr 22 Python
pytorch 数据集图片显示方法
Jul 26 Python
对matplotlib改变colorbar位置和方向的方法详解
Dec 13 Python
Python自动抢红包教程详解
Jun 11 Python
pycharm 批量修改变量名称的方法
Aug 01 Python
使用OpenCV circle函数图像上画圆的示例代码
Dec 27 Python
pytorch GAN伪造手写体mnist数据集方式
Jan 10 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
Python-openCV开运算实例
Jul 05 Python
python实现将中文日期转换为数字日期
Jul 14 Python
Django框架基础模板标签与filter使用方法详解
Jul 23 #Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
Jul 23 #Python
Python中拆分字符串的操作方法
Jul 23 #Python
python实现电子书翻页小程序
Jul 23 #Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 #Python
python使用原始套接字发送二层包(链路层帧)的方法
Jul 22 #Python
微信公众号token验证失败解决方案
Jul 22 #Python
You might like
php getsiteurl()函数
2009/09/05 PHP
apache php模块整合操作指南
2012/11/16 PHP
详解PHP对象的串行化与反串行化
2016/01/24 PHP
非常经典的PHP文件上传类分享
2016/05/15 PHP
PHP + plupload.js实现多图上传并显示进度条加删除实例代码
2017/03/06 PHP
thinkPHP5项目中实现QQ第三方登录功能
2017/10/20 PHP
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
分享8款优秀的 jQuery 加载动画和进度条插件
2012/10/24 Javascript
jquery实现带单选按钮的表格行选中时高亮显示
2013/08/01 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
jQuery实现表格颜色交替显示的方法
2015/03/09 Javascript
基于MVC4+EasyUI的Web开发框架形成之旅之界面控件的使用
2015/12/16 Javascript
学习Javascript面向对象编程之封装
2016/02/23 Javascript
jQuery根据表单name获取值的方法
2016/05/24 Javascript
浅析如何利用angular结合translate为项目实现国际化
2016/12/08 Javascript
解决React Native端口号修改的方法
2017/07/28 Javascript
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
vue2+el-menu实现路由跳转及当前项的设置方法实例
2017/11/07 Javascript
Node使用Nodemailer发送邮件的方法实现
2020/02/24 Javascript
解决VUEX的mapState/...mapState等取值问题
2020/07/24 Javascript
Vue项目中使用mock.js的完整步骤
2021/01/12 Vue.js
Python序列操作之进阶篇
2016/12/08 Python
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
在linux系统下安装python librtmp包的实现方法
2019/07/22 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
Tensorflow 实现释放内存
2020/02/03 Python
基于pytorch padding=SAME的解决方式
2020/02/18 Python
python3跳出一个循环的实例操作
2020/08/18 Python
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
小加工厂管理制度
2014/01/21 职场文书
合唱兴趣小组活动总结
2014/07/10 职场文书
初中差生评语
2014/12/29 职场文书
2015年采购工作总结
2015/04/10 职场文书
学校远程教育工作总结
2015/08/11 职场文书
创业计划书之校园超市
2019/09/12 职场文书
mysql insert 存在即不插入语法说明
2022/03/25 MySQL