flask框架(一):初入
1、装饰器回顾
# -*- coding: utf-8 -*-
# @Author : Felix Wang
# @time : 2018/7/3 17:10 import functools
"""
def wrapper(func):
def inner(*args, **kwargs):
return func(*args, **kwargs) return inner @wrapper # 执行index=wrapper(index)
def index(request):
pass
""" '''
def wrapper(option):
def inner(func, *args, **kwargs):
return func(*args, **kwargs) return inner # 加参数表示执行两步
@wrapper({'k': 'w'})
# 先执行 inner=wrapper({'k':'w'})
# @inner--》index=inner(index)
def index(request):
pass
''' url_map = {
'/index': 'index'
} def route(option):
# 建议写装饰器的时候都加上
@functools.wraps(func)# 这一句用来帮助我们设置函数的元信息,加了这句就不用起别名了
def inner(func, *args, **kwargs):
url_map[option['path']] = func return inner # 加参数表示执行两步
@route({'path': '/index'})
# 先执行 inner=wrapper({'k':'w'})
# @inner--》index=inner(index)
def index(request):
pass
2、session & cookie原理
3、继承字典(在字典之上开发功能)
# -*- coding: utf-8 -*-
# @Author : Felix Wang
# @time : 2018/7/3 17:34 class MyDict(dict):
def __init__(self, *args, **kwargs):
super(MyDict, self).__init__(*args, **kwargs)
self['modify'] = True obj = MyDict()
print(obj) # {'modify': True}
内容详解:
1、flask、django、tornado框架
Django:重武器,内部包含了非常多的组件:ORM、Form、ModelForm、缓存、Session、中间件、信号等。。。。。。
Flask:短小精悍,内容没有太多组件。第三方组件非常丰富。flask第三方组件:第三方插件网站
flask的路由比较特殊,基于装饰器来实现,但是究其本质还是通过add_url_rule()来实现的。
Tornado:异步非阻塞
2、Flask快速入门
a、安装
pip3 install flask
b、wsgi,Werkzeug
3、7行代码搭个flask
# -*- coding: utf-8 -*-
# @Author : Felix Wang
# @time : 2018/7/3 22:40 from flask import Flask app = Flask(__name__) # 实例化一个Flask对象 # 将‘/’和函数index的对应关系添加到路由中
@app.route('/') # 执行两步 a=app.route() a(hello_world)
def index():
return 'hello world' if __name__ == '__main__':
# 监听用户请求
# 如果有用户请求到来,则执行app的__call__到来
# 一个对象加(),执行__call__方法
app.run()
flask框架(一):初入的更多相关文章
- 初入前端框架bootstrap--Web前端
Bootstraps是一种简洁.直观.强悍的前端开发框架,它让web开发更迅速.简单.对于初入Bootstrap的小白,高效进入主题很重要,能为我们节省很多时间,下面我将对使用Bootstrap开发前 ...
- 实验1、初入Flask
实验介绍 1. 实验内容 Flask是一个用Python编写的Web应用程序框架.Armin Ronacher带领一个名为Pocco的国际Python爱好者团队开发了Flask.Flask基于Werk ...
- Scala初入
何为Scala物 Scala为基于JVM虚拟机中的面向对象与函数式编程思想并且完全兼容Java的混合编程语言,可以是Scala与Java是同根同源的,既然Scala与JAVA都是基于JVM之上的编程语 ...
- flask框架+pygal+sqlit3搭建图形化业务数据分析平台
一. 前言 先说下主要的框架和主要的图形库的特点:(个人见解) Django:python开发的一个重量级的web框架,集成了MVC和ORM等技术,设计之初是为了使开发复杂的.数据库驱动的网站变得简单 ...
- 初入android驱动开发之字符设备(一)
大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel.android的编译环境,然后就是了解如何刷设备以及一些最基本的工具.如adb.fa ...
- Flask框架简介
Flask框架诞生于2010年,是Armin ronacher 用python语言基于Werkzeug工具箱编写的轻量级Web开发框架! Flask本身相当于一个内核,其他几乎所有的功能都要用到扩展. ...
- Flask框架整个流程源码解读
Flask框架整个流程源码解读 一.总的流程 运行Flask其本质是运行Flask对象中的__call__,而__call__本质调用wsgi_app的方法 wsgi_app方法 def wsgi_a ...
- Python之Flask框架项目Demo入门
Python+Flask框架项目Demo入门 本例子用到了 Flask+蓝图+Flask-Login+SQLAlchemy+WTForms+PyMySQL相关架构 Flask Web框架介绍 Flas ...
- 初入SG-UAP
初入SG-UAP SpriderMan 关注 2019.06.19 14:10 字数 1130 阅读 10评论 0喜欢 0 初次接触SG-UAP,将自己的见解以文字形式记录下来,希望能对初入的伙伴们有 ...
- Flask框架登录日志模块编写
web扫描器网站的框架搭建逐渐进入尾声,边搭建框架的时候负责前端的小姐姐也在完善页面设计,过两天就可以进行功能点的完善了. 在扫描器中我们用到了用户登录模块,想法是初始化一个账户和密码,比如说admi ...
随机推荐
- 大数据学习(3)- redis集群
安装方法摘自 http://www.redis.cn/topics/cluster-tutorial.html 这个方法为简单版的方法,在原文的基础上,我加了一点参数,其他参数配置可以请教其他大神 搭 ...
- Bootstrap3基础教程 01 概述
移动设备优先是 Bootstrap 3 的最显著的变化. 基础的页面: <!DOCTYPE html> <html> <head> <meta charset ...
- 【原创】大叔经验分享(70)marathon重启app后一直处于waiting状态
marathon重启app后一直处于waiting状态,查看marathon日志 # journalctl -u marathon -f 有如下日志: Jun 14 12:58:38 DataOne- ...
- js中神奇的东西
简单了解一些js的东西 window.history.go(-1);//历史记录-1,跳转到上一次操作的页面 Location 对象的 replace() 方法用于重新加载当前文档(页面) javas ...
- JavaScript函数尾调用与尾递归
什么是函数尾调用和尾递归 函数尾调用与尾递归的应用 一.什么是函数的尾调用和尾递归 函数尾调用就是指函数的最后一步是调用另一个函数. //函数尾调用示例一 function foo(x){ retur ...
- MySql学习笔记【三、表相关操作】
创建表 CREATE TABLE [IF NOT EXISTS] table_name( column_name data_type, ... ) 如: CREATE TABLE test_table ...
- 【大数据】初识Hadoop
因为项目日志体量较大,每天有4-7T的日志量,传统的sqlserver已经不能满足,所以现在需要使用到大数据的相关工具进行记录和使用. 虽然公共项目提供了组件和解决方案,但是对于一些名词.概念还是有必 ...
- GNU编译器:Codesourcery
Codesourcery G++是个商业软件, 不过它有个lite版本,是完全免费的,只不过没有IDE,只有commmand line. Codesourcery G++支持coldfire, pow ...
- linux学习笔记七
#文件权限很重要,有些时候删除和新建文件没有权限根本操作不了,linux一切皆是文件,所以必须得了解下权限了. 文件的一般权限 简单的ls -ld 命令就能看到权限,dr-xr-x---补全应该是dr ...
- Activity的跳转及返回值 的四种方法
Activity生命周期 从创建到销毁的生命周期: onCreate()→onStart()→onResume()→onPouse()→onStop()→onDestroy() 从起动到后台再到前台: ...