Day17 Django的基础使用和结构
整个Django的访问流程:
浏览器 urls: http://127.0.0.1:8000/timer
url.py:
1, http://127.0.0.1:8000/timer GET 无请求数据
2,url匹配 url: url(r'^timer/',views.showtime)
3,showtime()函数
4,响应 时间字符换 浏览器 urls: http://127.0.0.1:8000/login
url.py:
1,http://127.0.0.1:8000/login/ GET 无请求数据
2,url匹配 url(r"^login",views.login)
3,login()函数
4,响应 login.html函数 返回的url是http://127.0.0.1:8000/valide
1,http://127.0.0.1:8000/valide POST 有请求数据{"user":"yangshuai"}类似于这种
2,url匹配 url(r"^valide",views.valide)
3,valide函数
4,响应页面
URL的详细讲解:
urls这个文件如果引用的两个文件里有重名,可以起一个别名:from blog import views as blog_views
当如果多个规则都可以匹配成功的话,以第一条匹配成功的为准。
rl配置系统的无名分组:例如查找一个年份里的页面,可以利用正则表达式来进行 url配置系统的有名分组:
根据关键字来传参
url(r"^article/(?P<year_id>\d+)/(?P<month_id>\d+)$", blog_views.article_year)
前面必须跟上?P<参数名> ,后面跟上$ 符号,这样才可以 映射分发:
当一个Django里边出现两个工程或者多个时,可以在每个项目里放入一个urls.py文件。
比如说现在有两个项目,一个blog,一个app01
总的url.py配置文件要定义的东西:
1,from django.conf.urls import url,include
2,urlpatterns = [
url(r'^admin/', admin.site.urls),
#路由分发app
url(r"^blog/",include(blog.urls))
]
3,在每个项目里创建urls.py
然后在里边写每个配置就行了
from blog import views as blog_views
from app01 import views as app01_views url反向解析:
url(r"^login.html/",app01_views.login,name="login")
后边的网页中需要这么写:
<form action="{% url 'login' %}" method='post'>
视图函数:
请求对象(请求对象):
request.GET() :数据类型是字典 get请求数据
request.POST() :数据类型是字典 post请求数据
request.method() 请求方式
request.path 请求路径
request.get_full_path 请求全路径
响应对象(响应对象):
Httpresponse()
render():
template:模板
context:上下文对象
redict()
Day17 Django的基础使用和结构的更多相关文章
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- Django web 基础
一.Django概述 Django大而全; 创建Django工程:django-admin startproject sitename 创建django之后生成的目录结构如下: Project Pro ...
- Django笔记 —— 基础部分总结
最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...
- 理解 angular2 基础概念和结构 ----angular2系列(二)
前言: angular2官方将框架按以下结构划分: Module Component Template Metadata Data Binding Directive Service Dependen ...
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
- Python开发【第二十一篇】:Web框架之Django【基础】
Python开发[第二十一篇]:Web框架之Django[基础] 猛击这里:http://www.cnblogs.com/wupeiqi/articles/5237704.html Python之 ...
- 【Python全栈-后端开发】Django入门基础-2
Django入门基础知识-2 一 .模版 一.模版的组成 HTML代码+逻辑控制代码 二.逻辑控制代码的组成 1 变量(使用双大括号来引用变量) {{var_name}} 2 标签(tag)的使用 ...
- 用Django ORM实现树状结构
前言 之前看对于用关系数据库实现树状结构的方法就知道一直做自关联的表,但是感觉自关联查询太慢了,最近看到一篇文章,感觉视野开拓了好多,文章:数据库表设计,没有最好只有最适合来自:微信. 下面就针对这里 ...
- Django 08 Django模型基础3(关系表的数据操作、表关联对象的访问、多表查询、聚合、分组、F、Q查询)
Django 08 Django模型基础3(关系表的数据操作.表关联对象的访问.多表查询.聚合.分组.F.Q查询) 一.关系表的数据操作 #为了能方便学习,我们进入项目的idle中去执行我们的操作,通 ...
随机推荐
- java方法重写和super关键字
//java方法重写和super关键字 //在继承中,其实就是子类定义了和父类同名的方法 //就是方法,属性都是相通的 //重写限制: //被子类重写的方法不能拥有比父类方法更加严格的权限 //sup ...
- [Redmine] Centos5上安装Redmine3.0+nginx+thin部署
项目管理的需要所以安装Redmine,其实wiki放在上面也不错的. 首先是安装,ruby应用第一次装,把坑记住. nginx, mysql是已经安装好的,只需要配置, 结合nginx的部署方式很多, ...
- Web Service进阶(二)如何用Apache TCPMon来截获SOAP消息
注:以下是关于TCPMon的一些使用常识,如果不需要或是已经熟悉就不用往下看了. 在WebService服务器和客户机之间会传递SOAP消息,有时我们需要得到这些消息以便调试,而Apache的TCPM ...
- Androd选取相册照片和拍照处理-android学习之旅(62)
实现如下图所示效果 核心代码 -构建打开相册和拍照的Intent 拍照 File outputImage = new File(Environment.getExternalStorageDirect ...
- HEVC,VP9,x264性能对比
Dan Grois等人在论文<Performance Comparison of H.265/MPEG-HEVC, VP9, andH.264/MPEG-AVC Encoders>中,比较 ...
- OC——第五天NSSArray /NSDicti…
1.oc中常用的集合(容器)有: 1.NSArry 数组:2.NSDicitionary 字典:3.NSSet 集(不常用) 数组:NSArry 继承自NSObject ,不可变的数组,用于管理一系列 ...
- 9.5、Libgdx加速度计
(官网:www.libgdx.cn) 加速度计可以让设备通过三个坐标轴检测加速度.通过加速度可以检测设备的方向. 加速度的单位是米每秒的平方.如果一个坐标轴指向地心,加速度大概是-10米每秒的平方.如 ...
- Linux 下源码安装大杂烩
本文仅以记录平常源码安装部分软件是需注意的关键点. 有时为了方便,如在 Ubuntu 系统中,采用 sudo apt-get install soft-version 来安装某一版本的软件显得更为便捷 ...
- CentOS安装、使用VNC
VNC (Virtual Network Computer)是虚拟网络计算机的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNIX ...
- 高通平台手机开发之LCD
4.1. LCD 参考文档: 1) 80-NA157-174_E_DSI_Programing_Guide_B-Family_Android_Devices.pdf 2) 80-NN766-1_A_L ...