PythonWeb框架
文章平均质量分 57
易辰_
当你的能力撑不起你的野心的时候,你就静下心来努力学习
展开
-
PythonWeb框架-Django、Flask框架源码分析博客列表
博客列表地址: https://blog.csdn.net/u013210620/article/category/7505402django—SessionMiddleware源码解析(一) https://blog.csdn.net/u013210620/article/details/79462350django—SessionMiddleware源码解析(二) https:/...原创 2018-09-03 10:46:36 · 876 阅读 · 0 评论 -
Flask---响应、模板、session、before_request、中间件、flash、项目结构
响应模板sessionbefore_request、after_request中间件flash项目结构项目依赖响应from flask import Flask,render_template,redirect,request,jsonify,make_responseapp = Flask(__name__)@app.route('/i...原创 2018-04-24 20:57:14 · 2316 阅读 · 2 评论 -
Flask---配置、路由、视图
配置from_object路由url配置url反向解析二级url自定义URLredirect_tosubdomain子域名路由上使用装饰器视图FBV方式CBV方式这篇博客就是粘贴demo,后续在分析其中的源码执行流程配置from_objects1.pyfrom flask import Flaskapp = Flask(...原创 2018-04-24 19:30:11 · 1551 阅读 · 0 评论 -
Flask--小示例
视图部分from flask import Flask,render_template,request,redirect,sessionapp = Flask(__name__) # 一个Flask类的对象app.secret_key = 'u2jksidjflsduwerjl'app.debug = TrueUSER_DICT = { '1': {'name':'dd','...原创 2018-04-23 19:15:05 · 2353 阅读 · 0 评论 -
django---rest-framework下的分页
初始化工作LimitOffsetPaginationPageNumberPaginationCursorPaginationModelViewSet版本控制这篇笔记主要是学习使用rest-framework分页的示例,后续在将其框架的分页源码分析下初始化工作models数据from django.db import modelsclas...原创 2018-04-12 22:09:13 · 1562 阅读 · 0 评论 -
django---CORS跨域
基本跨域自定义请求头put请求需要预检:自定义header回传跨域传输cookiedjango跨域实现现在的浏览器可以支持主动设置从而允许跨域请求,即:跨域资源共享(CORS,Cross-Origin Resource Sharing),其本质是设置响应头,使得浏览器允许跨域请求基本跨域客户端:<body> <i...原创 2018-04-12 19:57:30 · 1076 阅读 · 0 评论 -
django---django_content_type内置表
modelsfrom django.db import models# Create your models here.from django.contrib.contenttypes.models import ContentTypefrom django.contrib.contenttypes.fields import GenericForeignKey,GenericR...原创 2018-04-12 17:00:59 · 3901 阅读 · 0 评论 -
django---APIView用户认证小例子
用户认证小例子用户认证小例子modelsclass User(models.Model): user = models.CharField(max_length=32) pwd = models.IntegerField() user_type = models.IntegerField(max_length=32,choices=(...原创 2018-04-10 19:54:30 · 2489 阅读 · 0 评论 -
django---APIView、mixins、generics、HyperlinkedIdentityField
利用APIView方式modelsModelSerializer查询所有、添加查询单个、修改、删除利用mixin方式利用generics通用方式HyperlinkedIdentityField今天来了解下APIView的用法利用APIView方式models准备models对象from django.db import models...原创 2018-04-09 16:50:54 · 1176 阅读 · 0 评论 -
django---rest-framework序列化
APIView SerializerModelSerializerAPIView中使用dispatch代码示例APIView Serializermodelsfrom django.db import models# Create your models here.class Book(models.Model): title=...原创 2018-04-08 19:50:59 · 505 阅读 · 0 评论 -
django---restful framework初探
RESTful协议RESTful规则django下的RESTful基本实现RESTful协议Fielding将他对互联网软件的架构原则,定名为REST,即Representational State Transfer的缩写。我对这个词组的翻译是”表现层状态转化”。如果一个架构符合REST原则,就称它为RESTful架构。要理解RESTful架构,最好...原创 2018-04-08 13:55:10 · 1880 阅读 · 1 评论 -
Flask---wtforms使用、信号
简单示例基本使用渲染校验自定义Form组件信号简单示例from flask import Blueprint,render_template,request,session,redirectfrom ..utils.sql import SQLHelperaccount = Blueprint('account',__name__)from...原创 2018-05-02 22:14:05 · 724 阅读 · 0 评论 -
Flask--网页微信登陆示例
流程分析示例代码流程分析https://wx.qq.com/页面 &lt;div class="qrcode" ng-class="{hide: isScan || isAssociationLogin || isBrokenNetwork}"&gt; &lt;img class="img&q原创 2018-05-08 17:51:21 · 4670 阅读 · 0 评论 -
Flask---jsonify方式(api接口)
GET 方法post方法PUT 方法DELETE 方法GET 方法from flask import Flask, jsonify, abort, make_responseapp = Flask(__name__)articles = [ { 'id': 1, 'title': 'the way to pyt...原创 2018-05-03 21:41:47 · 11691 阅读 · 0 评论 -
twisted
示例一示例二示例三示例四示例五示例一from twisted.web.client import getPagefrom twisted.internet import reactorfrom twisted.internet import deferdef callback(result): print('下载完成了',result)...原创 2018-05-16 21:37:59 · 423 阅读 · 2 评论 -
简易的投票
app.pyfrom flask import Flask,request,render_template,redirect,session,jsonifyimport uuidimport queueapp = Flask(__name__)app.secret_key = 'asdfasdf'USER_QUEUE = {}@app.before_requestdef...原创 2018-05-16 19:32:09 · 855 阅读 · 0 评论 -
Tornado---异步非阻塞
基本使用import tornado.ioloopimport tornado.webfrom tornado import genfrom tornado.concurrent import Futurefrom tornado import httpclientclass AsyncHandler(tornado.web.RequestHandler): @gen...原创 2018-05-22 22:02:49 · 635 阅读 · 0 评论 -
Celery
快速入门flask中使用类似于contab的定时任务快速入门Celery是由Python开发的一个简单、灵活、可靠的处理大量任务的分发系统,它不仅支持实时处理也支持任务调度。 user:用户程序,用于告知celery去执行一个任务。 broker: 存放任务(依赖RabbitMQ或Redis,进行存储) worker:执行任务安装rabbitMQ或...原创 2018-05-25 16:29:08 · 664 阅读 · 0 评论 -
Tornado---cookie、csrf、文件上传、验证码
cookie基于cookie的登陆cookiecookieimport tornado.ioloopimport tornado.webclass MainHandler(tornado.web.RequestHandler): def get(self): if not self.get_cookie(&quot;mycookie&quot;):...原创 2018-05-19 13:01:16 · 508 阅读 · 0 评论 -
Flask---flask_mail邮箱发送
flask-mail 文档 http://www.pythondoc.com/flask-mail/index.html 项目中不可避免需要使用邮箱认证,如果使用flask则可以利用Flask-Mail来实现开启qq邮箱SMTP服务 之后手机验证什么的依自己帐号设置,验证成功后会获得一个授权码,这个需要保存后续发送邮箱时密码就填这个授权码。安装Flask-Mail 使用 pi...原创 2018-05-06 19:05:36 · 984 阅读 · 0 评论 -
Tornado---路由、模板、UIMethod-UIModule
快速上手路由系统模板引擎模板继承自定义UIMethod以UIModule快速上手import tornado.ioloopimport tornado.webclass MainHandler(tornado.web.RequestHandler): def get(self): self.write("Hello, wo...原创 2018-05-18 20:29:38 · 944 阅读 · 0 评论 -
websocket原生、flask\tornado实现
定义示例flask实现websockettornado实现定义什么是轮训? - 通过定时器让程序每隔n秒执行一次操作。什么是长轮训? - 浏览器向后端发起请求,后端会将请求 hang 住,最多hang 30s。 如果一直不返回数据:则最多等待30s,紧接着用户立即再发送请...原创 2018-05-17 20:38:58 · 2537 阅读 · 0 评论 -
Flask---flask-script、flask-sqlalchemy、flask_migrate、多app应用
flask-script使用flask_sqlalchemy使用flask_migrate使用多app应用flask-script使用1、入口文件manage.py manage.pyfrom s8day130_pro import create_appfrom flask_script import Managerfrom flask_...原创 2018-05-04 21:05:30 · 586 阅读 · 0 评论 -
Flask---RESTful使用
快速入门资源路由Endpoints数据格式化完整示例整理于 Flask-RESTful官网快速入门from flask import Flaskfrom flask_restful import Resource, Apiapp = Flask(__name__)api = Api(app)class HelloWorld(Resource...原创 2018-05-04 15:10:54 · 2378 阅读 · 1 评论 -
django---信号、序列化
信号默认信号自定义信号序列化serializersjson.dumpsJSONEncoder信号Model signals pre_init # django的modal执行其构造方法前,自动触发 post_init # django的modal执行其构造方法...原创 2018-03-30 21:26:10 · 385 阅读 · 0 评论 -
django---缓存
内存缓存文件缓存全站缓存局部视图缓存MemcacheDjango提供了6种缓存方式开发调试缓存内存缓存文件缓存数据库缓存Memcache缓存(使用python-memcached模块)Memcache缓存(使用pylibmc模块)经常使用的有内存缓存、文件缓存和Mencache缓存内存缓存内存缓存需要在settings.py中进行...原创 2018-03-30 18:47:50 · 178 阅读 · 0 评论 -
django-师生班级增删改查(pymql方式)
url配置view视图db_helperpyhtml页面看下效果图(只看老师的,另外班级的、学生的都类似) url配置from django.conf.urls import urlfrom . import viewsurlpatterns = [ url(r'^class_list/', views.class_list, name="clas原创 2018-01-26 21:48:14 · 523 阅读 · 1 评论 -
django-视图CBV模式、CBV结合装饰器、csrf
使用cbv实现视图CBV结合装饰器直接加在视图类上但method_decorator必须传 name 关键字参数 加在CBV视图的get或post方法上 加在dispatch方法上CSRF Token使用cbv实现视图from django.views import Viewfrom django.utils.decorators import me原创 2018-01-26 21:26:59 · 2439 阅读 · 0 评论 -
django-聚合、分组、F查询和Q查询、总结
准备测试数据聚合查询分组查询F查询Q查询总结准备测试数据from django.db import models# Create your models here.class Publisher(models.Model): id = models.AutoField(primary_key=True) name = models原创 2018-01-27 20:08:00 · 21886 阅读 · 1 评论 -
django-Form组件
Widgets每个表单字段都有一个对应的Widget 类,它对应一个HTML 表单Widget,例如。在大部分情况下,字段都具有一个合理的默认Widget。例如,默认情况下,CharField 具有一个TextInput Widget,它在HTML 中生成一个。表单渲染对于/ 对,还有几个输出选项:{{ form.as_table }} 以表格的形式将它们渲染在 标签中{{原创 2018-02-02 21:31:00 · 835 阅读 · 0 评论 -
django-socket跟浏览器通信、wsgiref服务器、jinja2渲染库
socket跟浏览器通信wsgirefjinja2socket跟浏览器通信所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端。 这样我们就可以自己实现Web框架了。 每个HTTP请求和响应都遵循相同的格式,一个HTTP包含Header和Body两部分,其中Body是可选的。 HTTP响应的Header中有一个 Content-原创 2018-01-11 17:28:30 · 726 阅读 · 0 评论 -
django-视图系统
简单的视图Request对象Response对象JsonResponse对象render对象redirect简单的视图from django.views import Viewclass MView(View): def dispatch(self, request, *args, **kwargs): print('be原创 2018-01-18 19:44:08 · 361 阅读 · 0 评论 -
django-cookie
cookieCookie版登陆校验装饰器cookie设置cookierep.set_cookie(key,value,...)rep.set_signed_cookie(key,value,salt='加密盐',...)方法如下: key, 键 value='', 值 max_age=None, 超时时间 expir原创 2018-01-25 18:02:11 · 305 阅读 · 0 评论 -
django-session
演示sessionsession的一些方法Session版登陆验证演示sessionDjango中默认支持Session,其内部提供了5种类型的Session供开发者使用:数据库(默认)缓存文件缓存+数据库加密cookiedef login2(request): if request.method == "POST":原创 2018-01-26 20:10:58 · 413 阅读 · 0 评论 -
django-orm专项练习
准备表普通查询练习简单示例单表查询一对多查询一对一查询多对多查询双下划线准备表from django.db import models# Create your models here.class Publisher(models.Model): id = models.AutoField(primary_key=True)原创 2018-01-24 21:59:12 · 766 阅读 · 0 评论 -
django-一对一、一对多、多对多操作、常用方法
准备表一对一操作一对多操作多对多操作常用方法了不起的双下划线准备表创建如下几张表from django.shortcuts import HttpResponse, render, redirectfrom django.db import modelsclass Class(models.Model): id = models.Aut原创 2018-01-23 22:11:37 · 92725 阅读 · 4 评论 -
django-师生班级增删改查(orm方式)
url配置modelspy配置viewspy配置html页面url配置 url(r'^class_list/$', views.class_list, name="class_list"), url(r'^class_add/$', views.class_add, name="class_add"), url(r'^class_edit/原创 2018-01-26 22:09:59 · 611 阅读 · 0 评论 -
django-自定义分页
向模板传参数方式拼接字符串形式封装对象方法准备数据如下:data = []for i in range(1, 312): tmp = {"id": i, "name": "safly{}".format(i)} data.append(tmp)向模板传参数方式page.htmlbody>div class="container原创 2018-01-27 12:06:03 · 501 阅读 · 0 评论 -
django-内置分页Paginator
自定义分页 上篇文章是自定义实现的分页,在django里面有内置封装好的Paginator同样可以实现类似的效果 看下效果图: 我们先看下url配置如下:url(r'^paginator/$',app06_views.paginator ),然后看下view视图代码from django.shortcuts import render, redirect, HttpRes原创 2018-01-27 14:54:28 · 2998 阅读 · 0 评论 -
django-ModelForm组件
这个组件的功能就是把model和form组合起来首先导入ModelFormfrom django.forms import ModelForm在视图函数中,定义一个类,比如就叫StudentList,这个类要继承ModelForm,在这个类中再写一个原类Meta(规定写法,并注意首字母是大写的)在这个原类中,有以下属性(部分):class StudentList(ModelFo...原创 2018-03-14 16:37:08 · 515 阅读 · 0 评论