1 什么是flask

  Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。

  百度百科:点击前往

  中文文档:点击前往

2 利用pip安装flask模块

  2.1 前提

    安装好python、配置好环境变量

  2.2 查看python版本

    

  2.3 查看已经安装好的模块

    

  2.4 利用pip安装flash模块

    注意:为了速度更快建议将pip的源换成豆瓣的

    pip3 install -i https://pypi.doubanio.com/simple/ flask

3 创建Flask应用的步骤

  3.1 创建一个后缀为 py 的文件

    

  3.2 从flask模块中导入Flash类

    from flask import Flask

  3.3 利用Flask类创建一个Flask实例

    app = Flask(__name__)

  3.4 定义一个测试方法,用来项前端传送数据

    def test(): 
      return "Hello Fury"

  3.5 指定路径和方法的匹配规则(有点类似java中springMVC的请求分发)

    app.add_url_rule('/', view_func=test)

      解释:根路径对应test方法(即:前端发送的请求路径是根路径时后台就执行test方法)

    注意:后台向前端发送的数据一般都是字符串的

  3.6 运行后台

    app.run()

  3.7 完整代码

from flask import Flask

app = Flask(__name__)

def test():
return "Hello Fury" app.add_url_rule('/', view_func=test) app.run()

myTest.py

  3.8 利用python自带的IDLE打开myTest.py,然后运行

    

  3.9 通过浏览器访问 http://localhost:5000/ 的效果如下

    

    查看源代码为

      

      注意:在源代码中没有发现任何html标签,由此说明后台传过来的都是字符串;如果想要出现html标签可以直接将html标签写到后台的字字符串中然后传过来

        

4 利用pyCharm(专业版)创建一个简单的flash应用

  4.1 pyCharm(专业版)安装包:

    链接:http://pan.baidu.com/s/1jI5lnYQ 密码:osl8

  4.2 pyCharm(专业版)注册码教程

    点击前往

  4.3 创建flash应用

    

    创建成功后的效果

      

5 利用装饰器来匹配路径和执行方法 

@app.route('/')
def test():
return "Hello Fury"
 
代码解释:浏览器发送的请求路径时根路径时就执行test方法(类似于java中springMVC中利用注解实现请求分发) 上面的代码时下面三行代码的进化版本
def test():
return "Hello Fury"
app.add_url_rule('/', view_func=test)   完整代码如下

  

6 app.route('路径')  剖析

  6.1 装饰器

    装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。

  6.2 flash对象的route方法的返回值

    这个返回值时一个装饰器(即:app.route不是装饰器,app.route执行后的放回值是装饰器【app.route()是装饰器】)

    

7 app.run() 剖析

  7.1 Flash对象的run方法有三个默认参数

    

      注意:其实这三个默认参数是flash应用的配置项

    7.1.1 host

      

      用来指定监听的IP地址,如果是127.0.0.1表示只能本机访问,如果是0.0.0.0表示所有机器都能访问;默认是127.0.0.1

    7.1.2 post

      

      用来指定请求端口;默认值是5000

    7.1.3 debug

      

      用来指定是否开启调试模式;默认值是false

        如果开启调试模式,pyCharm会在我们修改了代码后自动重新运行应用;如果出现错误会在客户端显示错误信息

8 app.config 剖析

  Flash对象的config属性其实是一个字典(查看源码就能看出来)

    

  8.1 利用字典的方法更新Flash对象的config属性

    

  8.2 利用app.config对象提供的方法来修改config的value值

9 本博客知识点

from flask import Flask
Flask
app = Flask(__name__)
app.run(host=主机, port=端口, debug=True)
app.add_url_rule('规则', view_func=函数) app.config --> Config类的实例 --> dict子类 dict --> update [key]=value
Config --> from_pyfile from_object from_json app.route 它不是个装饰起 mydec = app.route('路径') @mydec
def func():
return 'This is a view' 作业练习:
1. 自己绑定一个函数到一个路径上(不能是根路径)
2. 开启debug模式
3. 用from_pyfile加载开启debug模式,并输出app.config

知识点

10 三少需要复习的知识点

  sqlalchemy

  python异常

  json、ajax

  python基础知识

  2017年9月3日01:45:54

												

Flask01 初识flask、flask配置的更多相关文章

  1. Flask01 初识flask、创建flask应用、flask启动配置

    1 什么是flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 百度百科:点击前往 中文文档: ...

  2. Flask对象配置

    Flask的配置就是在 app.config 中添加一个键值对,但是你存进去的键必须是config中应该存在的,如果不再存在的话,它会默认无用,就这么放着 config中有用的key { 'DEBUG ...

  3. flask的配置设置的几种方式

     Flask的配置对象(config)是一个字典(dict)的子类(subclass),所以你可以把配置用键值对的方式存储进去. 1.一些重要的配置,可以设置在系统环境变量里,又或者放到某个服务器里, ...

  4. flask 开发配置

    flask 开发配置 一:在虚拟机里面安装ubuntu系统.略 二: apt install python3-pip #安装pip, pip3 install --upgrade pip 三: pip ...

  5. 第七篇 Flask实例化配置及Flask对象配置

    一.Flask对象的配置 Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? ...

  6. python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架

    Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...

  7. day92:flask:flask简介&基本运行&路由&HTTP请求和响应

    目录 1.Flask简介 2.关于使用flask之前的准备 3.flask的基本运行 4.flask加载配置 5.传递路由参数(没有限定类型) 6.传递路由参数(通过路由转换器限定路由参数的类型) 7 ...

  8. Inside Flask - flask 扩展加载过程

    Inside Flask - flask 扩展加载过程 flask 扩展(插件)通常是以 flask_<扩展名字> 为扩展的 python 包名,而使用时,可用 import flask. ...

  9. Inside Flask - flask.__init__.py 和核心组件

    Inside Flask - flask.__init__.py 和核心组件 简单的示例 首先看看一个简单的示例.使用 Flask ,通常是从 flask 模块导入 Flask . request 等 ...

随机推荐

  1. 简单谈谈js中的MVC

    MVC是什么? MVC是一种架构模式,它将应用抽象为3个部分:模型(数据).视图.控制器(分发器). 本文将用一个经典的例子todoList来展开(代码在最后). 一个事件发生的过程(通信单向流动): ...

  2. RxSwift 系列(九) -- 那些难以理解的概念

    前言 看完本系列前面几篇之后,估计大家也还是有点懵逼,本系列前八篇也都是参考RxSwift官方文档和一些概念做的解读.上几篇文章概念性的东西有点多,一时也是很难全部记住,大家脑子里面知道有这么个概念就 ...

  3. spring boot 配置文件application

    场景:在项目部署的过程中,对于spring boot的配置文件一直不很了解,直到项目出现一个莫名其妙的问题——工程classes中的配置文件被覆盖,程序启动总是报错! 1  配置文件的优先级 appl ...

  4. (转)每天一个linux命令(15):tail 命令

    场景:每次查看服务端的日志时候都需要反复重新加载服务端的日志.用tail命令可以很方便的查看服务器上的日志更新! tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅 ...

  5. 基于.net的微服务架构的开发测试环境运维实践

    眼下,做互联网应用,最火的架构是微服务,最热的研发管理就是DevOps, 没有之一.微服务.DevOps已经被大量应用,它们已经像传说中的那样,可以无所不能.特来电云平台,通过近两年多的实践,发现完全 ...

  6. 再起航,我的学习笔记之JavaScript设计模式02

    我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 我们 ...

  7. maven相关的学习资料

    1, maven的settings配置文件详解: http://blog.csdn.net/jinshuaiwang/article/details/23686099 2,maven原理---翡青的博 ...

  8. 移动端touch事件封装

    <meta charset="utf-8"><meta name="viewport" content="width=device- ...

  9. 《奇思妙想》在JavaScript语言中floor和round方法在某种随机分配场景下对分配区间的公平性!!!

    前言 大欢哥的题目完成了,但是衍生出一个新的问题!上篇随笔中我和大欢哥采用的随机数生成方式,到底是谁的比较公平??? 正文 欢迎来到阿段博客<奇思妙想>!我们的口号是 “心有多大,bug就 ...

  10. Open-Falcon第一步环境准备(小米开源互联网企业级监控系统)

    1.环境安装 本文采取rpm安装方式,大家也可以用源码包安装. wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release- ...