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之旅(三十)——打印流PrintWriter,合并流,切割文件并且合并,对象的序列化Serializable,管道流,RandomAccessFile,IO其他类,字符编码
JAVA之旅(三十)--打印流PrintWriter,合并流,切割文件并且合并,对象的序列化Serializable,管道流,RandomAccessFile,IO其他类,字符编码 三十篇了,又是一个 ...
- MOAC中“MO:安全性配置文件“对于开发者
1. 获取配置文件的值:应用开发员->配置文件->输入用户配置文件名,找到上面的名称,即可填入fnd_profile.VALUE()中. 2. MO:安全性配置文件有值的话,就代表启用了M ...
- java中Error与Exception有什么区别
Error类和Exception类都继承自Throwable类. Error的继承关系: java.lang.Object java.lang.Throwable java.lang.Er ...
- 【一天一道LeetCode】#101. Symmetric Tree
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given a ...
- C语言assert的用法
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include <assert.h>void assert( int ...
- [问与答]为什么 'a' in ('abc') 是True 而 'a' in ['abc'] 是False呢?
Why is 'a' in ('abc') True while 'a' in ['abc'] is False? 原文链接 问 在使用解释器的时候,表达式'a' in ('abc') 返回是True ...
- HashMap与HashTable面试宝典
u012233832的专栏 初生牛犊 目录视图 摘要视图 订阅 写博客,送money.送书.送C币啦 7-8月博乐推荐文章 砸BUG 得大奖 100%中奖率 微信开发学习路线高级篇上线 ...
- Android调用binder实现权限提升-android学习之旅(81)
当进程A权限较低,而B权限较高时,容易产生提权漏洞 fuzz测试的测试路径 First level Interface是服务 Second level Interface是服务中对应的接口 1.首先获 ...
- 一起来搭简单的App框架
1.概述 最近在学车,抽着空写了一个常用的App框架,可惜不会制作gif图片,请忽略录屏软件的那个浮动窗口,要是有更好的方式制作gif麻烦告知下提前感谢,效果图如下,凑合着看下吧. 主要实现了 [1] ...
- 排序算法(二)Sort with Swap(0,*)
对于一个由0到N-1的序列,如果只能交换0和另一个数的位置,求多少次能够将序列变为递增序列. 输入为<N> <序列>(N和序列之间有一个空格,序列元素之间均有一个空格). 设序 ...