9.3Django
2018-9-3 13:56:18
开始进行Django!!!!
2018-9-3 14:48:25
出去玩去了!!啦啦啦!
Django还是很好玩的!
贴上笔记
day60 2018-04-27 1. 今日内容
1. 概括
1. 98%的时间都是在写例子 帮你理解Django --> 由我们写的例子对比理解Django框架
2. 安装Django
2. 写例子 用户的浏览器(socket客户端)
3. 客户端往服务端发消息 6. 客户端接收消息 7. 关闭 JD的服务器(socket服务端)
1. 启动,监听
2. 等待客户端连接 4. 服务端收消息
5. 服务端回消息 7. 关闭 FTP作业: FTP客户端: PUT,1024.avi,2048 FTP服务端: .split("|") 浏览器和服务端通信都要遵循一个HTTP协议(消息的格式要求). 关于HTTP协议:
1. 浏览器往服务端发的叫 请求(request)
请求的消息格式:
请求方法 路径 HTTP/1.1\r\n
k1:v1\r\n
k2:v2\r\n
\r\n
请求数据 2. 服务端往浏览器发的叫 响应(response)
响应的消息格式:
HTTP/1.1 状态码 状态描述符\r\n
k1:v1\r\n
k2:v2\r\n
\r\n
响应正文 <-- html的内容 动态的网页:
本质上都是字符串的替换
字符串替换发生在什么地方:
在服务端替换完再返回给浏览器!!! 总结一下:
1. web框架的本质:
socket服务端 与 浏览器的通信
2. socket服务端功能划分:
a. 负责与浏览器收发消息(socket通信) --> wsgiref/uWsgi/gunicorn... b. 根据用户访问不同的路径执行不同的函数 c. 从HTML读取出内容,并且完成字符串的替换 --> jinja2(模板语言) 3. Python中 Web框架的分类: 1. 按上面三个功能划分:
1. 框架自带a,b,c --> Tornado
2. 框架自带b和c,使用第三方的a --> Django
3. 框架自带b,使用第三方的a和c --> Flask
2. 按另一个维度来划分:
1. Django --> 大而全(你做一个网站能用到的它都有)
2. 其他 --> Flask 轻量级 3. 新建Django项目
命令行创建:
django-admin startproject mysite
pycharm创建:
1. File --> New project --> 左侧选Django --> 右侧填项目路径,并且勾选python.exe 4. 设置Django项目:
1. settings.py
1. 配置HTML文件存放的位置
2. 配置静态文件存放的位置 2. 作业
1. 用Django框架把我们之前写过登录的页面返回给浏览器
1.命令行创建Django项目
2.pycharm创建Django
设置静态文件的路径
设置html文件路径
url 和函数成对应关系
from django.conf.urls import url
from django.contrib import admin
from django.shortcuts import HttpResponse, render def yimi(request):
# request参数保存了所有和用户浏览器请求相关的数据
# 自己打开文件返回网页
# with open("templates/login1/login.html", "r", encoding="utf-8") as f:
# data = f.read()
return render(request, "../static/login1/login.html") def xiaohei(request):
return HttpResponse("hello xiaohei!") # 保存了路径和函数的对应关系
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^xiaohei/', xiaohei),
url(r'^yimi/', yimi), ]
9.3Django的更多相关文章
- Python开发入门与实战3-Django动态页面
3.Django动态页面 上一章节我们实现的helloworld视图是用来演示Django网页是创建的,它不是一个动态网页,每次运行/helloworld/,我们都将看到相同的内容,它类似一个静态HT ...
- Docker技术入门与实战 第二版-学习笔记-9-Docker Compose 项目-3-Django项目实例
使用 Django 我们现在将使用 Compose 配置并运行一个 Django/PostgreSQL 应用.在此之前,先确保 Compose 已经安装. 1.通过编辑 Dockerfile文件来指定 ...
- django系列8.3--django中间件实现登录验证(1)
中间件版的登录验证需要依靠session,所以数据库中要有django_session表. urls.py from django.conf.urls import url from app01 im ...
- 循序渐进PYTHON3(十三) --3-- DJANGO之FORM表单(为自动生成的HTML标签添加样式)
views.py from django.shortcuts import render,HttpResponse from django import forms import json impor ...
- 3---Django rest framework源码分析(3)----节流
Django rest framework源码分析(3)----节流 目录 添加节流 自定义节流的方法 限制60s内只能访问3次 (1)API文件夹下面新建throttle.py,代码如下: # u ...
- 3django url name详解
打开urls.py from django.conf.urls import url from django.contrib import admin from calc import views a ...
- django rest framework权限和认证
Django rest framework之权限 一.Authentication用户认证配置 1.四种验证及官网描述: BasicAuthentication 此身份验证方案使用HTTP基本身份验证 ...
- python复习目录
目录 一.计算机基础 二.python 2.1初始python 2.1 python基础1 2.2 python基础2 三.函数 3.1 函数进阶 3.2 函数之装饰器 3.3 递归函数之二分查找 3 ...
- django orm高级查询 F表达式和Q表达式以及分组annotate
1.关联关系映射及查询1.1django默认开启延迟加载所有多对1和1对1如果不使用select_related(),需要会延迟加载获取到相关对象,因为延迟可能会造成n+1次查询的问题,所以便有了se ...
随机推荐
- yum常用操作
一.yum安装使用: 1.Yum:rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,up2date的替代工具 2.yum repository:yum repo,存储了众多rpm ...
- 项目管理PMP输入输出ITTO联系记忆
综述九大领域 项目管理的输入输出非常难记,原因在于理解起来也经不去推敲,故整理一个联想记忆版本,通过联想把输入输出都串起来达到记忆的目的,既然是联想,里面的内容逻辑只是为了好记,并无正确与否,请大家原 ...
- @ControllerAdvice -- 处理异常示例
Class : SessionInterceptor package com.estate.web.filter; import javax.annotation.Resource; import j ...
- mysql asyn 实战
创建configuration时,发现URLParser找不到,于是只能使用配置文件来,当然使用配置文件比使用URL初始化还要直观些 def configurationWithPassword = n ...
- Extjs定义的Fckeditor控件
Ext.namespace('CRM.Panels'); //Ext.BoxComponent 这里继承是参考的Ext.form.Field CRM.Panels.Fckeditor = Ext.ex ...
- 一张图了解SSH端口转发
ssh和端口转发什么的,我就不想废话了,主要是ssh的命令格式真心不太好理解.网上也搜过相关文章,参差不齐.其实自己也理解怎么用,但我自己也表达不好.这几日无意碰到篇好文章,有图有真相,清楚的很,还有 ...
- NTP服务器时间集群借节点之间同步
1.三个节点时间同步,cdh1,cdh2,cdh3 2.做法:cdh1从网络时间同步,然后cdh2和cdh3从cdh1节点同步 3.安装与自启动设置 yum install ntp 按上面的安装方式在 ...
- CentOS下安装vsftpd
因为FTP的端口是 两个,一个是固定21端口,还有一个任意端口的数据通道.关键是任意端口不好搞. 首先在vsftpd的配置文件中设置 任意端口的范围 [root@localhost root]# vi ...
- Ansible的Inventory管理
Ansible将可管理的服务器集合成为Inventory,Inventory的管理便是服务器的管理. hosts文件的位置: /etc/ansible/hosts 在命令行通过-i参数指定 通过/et ...
- repr方法字符串输出实例对象的值
#coding=utf-8 #repr方法字符串输出实例对象的值 class CountFromBy(object): def __init__(self, val=0, incr=1): self. ...