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系列之浅谈pickle模块封装和拆封数据对象的方法
May 23 Python
Python实现屏幕截图的两种方式
Feb 05 Python
Python列表推导式、字典推导式与集合推导式用法实例分析
Feb 07 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
利用Python进行数据可视化常见的9种方法!超实用!
Jul 11 Python
python sklearn库实现简单逻辑回归的实例代码
Jul 01 Python
Python利用WMI实现ping命令的例子
Aug 14 Python
Django项目之Elasticsearch搜索引擎的实例
Aug 21 Python
简单易懂Pytorch实战实例VGG深度网络
Aug 27 Python
python网络编程之多线程同时接受和发送
Sep 03 Python
python tkinter组件摆放方式详解
Sep 16 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
Apr 21 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图片水印添加、压缩、剪切的封装类实现
2020/04/18 PHP
ThinkPHP框架搭建及常见问题(XAMPP安装失败、Apache/MySQL启动失败)
2016/04/15 PHP
JavaScript 模式之工厂模式(Factory)应用介绍
2012/11/15 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
javascript中this的四种用法
2015/05/11 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
理解javascript定时器中的单线程
2016/02/23 Javascript
Jquery zTree 树控件异步加载操作
2016/02/25 Javascript
vue学习笔记之指令v-text &amp;&amp; v-html &amp;&amp; v-bind详解
2017/05/12 Javascript
详解如何使用微信小程序云函数发送短信验证码
2019/03/13 Javascript
[03:35]2018年度DOTA2最佳辅助位选手5号位-完美盛典
2018/12/17 DOTA
Django1.3添加app提示模块不存在的解决方法
2014/08/26 Python
python分析nignx访问日志脚本分享
2015/02/26 Python
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
Python实现购物系统(示例讲解)
2017/09/13 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
2018/06/21 Python
python画折线图的程序
2018/07/26 Python
python面向对象之类属性和类方法案例分析
2019/12/30 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
2020/05/24 Python
Pycharm自带Git实现版本管理的方法步骤
2020/09/18 Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
2020/11/12 Python
HTML5 微格式和相关的属性名称
2010/02/10 HTML / CSS
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
南威尔士家居商店:Leekes
2016/10/25 全球购物
adidas泰国官网:adidas TH
2020/07/11 全球购物
static关键字的用法
2013/10/07 面试题
临床医师专业个人自我评价范文
2013/11/07 职场文书
行政总经理岗位职责
2013/12/05 职场文书
揠苗助长教学反思
2014/02/04 职场文书
薪酬专员岗位职责
2014/02/18 职场文书
农村优秀教师事迹材料
2014/08/27 职场文书
大雁塔英文导游词
2015/02/10 职场文书
工作犯错保证书
2015/05/11 职场文书
2016年三八节红领巾广播稿
2015/12/17 职场文书
redis实现排行榜功能
2021/05/24 Redis