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应用、flask启动配置的更多相关文章

  1. python+mysql+flask创建一个微博应用(持续更新)

    微博应用的结构: 用户管理,包括登录管理,会话,用户角色,个人档案及用户头像. 数据库管理,包括数据库迁移处理. Web表单支持,包括字段检验和用于防止垃圾邮件的验证码功能. 大数据的分页功能. 全文 ...

  2. Python框架学习之用Flask创建一个简单项目

    在前面一篇讲了如何创建一个虚拟环境,今天这一篇就来说说如何创建一个简单的Flask项目.关于Flask的具体介绍就不详细叙述了,我们只要知道它非常简洁.灵活和扩展性强就够了.它不像Django那样集成 ...

  3. flask再学习-重构!启动!

    1.打造MVC框架: common/libs:放置一些功能公用的方法. common/models:放置ORM模型 config:配置文件属性 web/controllers:视图层,处理url和ap ...

  4. 创建第一个flask项目

    安装flask模块 pip install flask或conda install flask 创建一个run.py文件,文件内容如下: from flask import Flask app = F ...

  5. 初识Flask框架,以及Flask中的模板语言jinjia2和Flask内置的Session

    一.web框架的对比 首先我们先来看下比较火的web框架 1.Django: 优点:大而全,所有组件都是组织内部开发高度定制化,教科书级别的框架 缺点:大到浪费资源,请求的时候需要的资源较高 2.Fl ...

  6. Flask基础(03)-->创建第一个Flask程序

    # 导入Flask from flask import Flask # 创建Flask的应用程序 # 参数__name__指的是Flask所对应的模块,其决定静态文件从哪个地方开始寻找 app = F ...

  7. 创建我的flask第一个应用(二)

    继上一篇创建我的flask第一个应用(一),继续学习配置flask 在myproject未提供flask默认运行的主程序文件"wsgi.py"或"app.py" ...

  8. 创建我的flask第一个应用(一)

    本地python版本 (venv) dongge@dongge-PC:/data/webroot$ python --version Python 3.6.5 创建flask命令 $mkdir myp ...

  9. day94:flask:Jinjia2模板引擎&flask中的CSRF攻击&Flask-SQLAlchemy的创建模型类和基本的增删改查

    目录 1.Jinjia2模板引擎 1.Jinjia2加载模板并传递数据到模板中 2.Jinjia2的模板语句 3.模板中特有的变量和函数 4.模板中内置的过滤器 5.自定义过滤器 6.模板继承 2.在 ...

  10. python 全栈开发,Day142(flask标准目录结构, flask使用SQLAlchemy,flask离线脚本,flask多app应用,flask-script,flask-migrate,pipreqs)

    昨日内容回顾 1. 简述flask上下文管理 - threading.local - 偏函数 - 栈 2. 原生SQL和ORM有什么优缺点? 开发效率: ORM > 原生SQL 执行效率: 原生 ...

随机推荐

  1. jQuery中通过JSONP来跨域获取数据的三种方式

    第一种方法是在ajax函数中设置dataType为'jsonp' $.ajax({ dataType: 'jsonp', url: 'http://www.a.com/user?id=123', su ...

  2. iOS 基本数据类型 和 指针 特点

    基本数据类型 : 整型int, 字符型char , 浮点型 (float 和 double), 枚举型; -- 构造类型 : 数组类型, 结构体类型, 共用体类型; -- 指针类型 : 最终要的数据类 ...

  3. pygame躲敌人的游戏

    #first.py# coding=utf- import pygame from pygame.locals import * from sys import exit from util impo ...

  4. Linux课程---1、VMWare安装CentOS虚拟机(安装重要注意)

    Linux课程---1.VMWare安装CentOS虚拟机(安装重要注意) 一.总结 一句话总结: 可以先去百度搜一篇对应系统的安装教程:比如 CentOS 7 安装 1.安装VMWare之后,打开w ...

  5. 分享知识-快乐自己:SSH 整合 Demo

    楼主A: XML 版 SSH整合Demo https://github.com/MlqBeginner/BlogGardenWarehouse/blob/master/SSH%E6%95%B4%E5% ...

  6. 利用simhash计算文本相似度

    摘自:http://www.programcreek.com/java-api-examples/index.php?source_dir=textmining-master/src/com/gta/ ...

  7. ADO-添加msado15.dll及基本类对象的了解

    一.dll文件的导入 参考文献:https://blog.csdn.net/qq_31209383/article/details/51199762 要使用数据库,首先在stdafx.h中导入msad ...

  8. Linux-解决putty无法直接使用root用户远程登录linux主机的问题

    问题描述: 有时,在使用putty连接远程linux主机时会发现,无法直接使用root登录, 但是可以使用其他用户登录,然后切换至root用户. 解决办法: 1.修改配置文件 vi /etc/ssh/ ...

  9. 09 - Django应用第六步

    1 自定义页面 在项目中, 肯定不会只是显示单纯的HTML文件, 我们可能还需要JS, CSS, 图片等 这些文件就被称为静态文件(starIc files) 在小的项目中, 可能静态文件比较少, 但 ...

  10. 2017-2018-1 20179203 《Linux内核原理与分析》第七周作业及第三周测试总结

    攥写人:李鹏举 学号:20179203 ( 原创作品转载请注明出处) ( 学习课程:<Linux内核分析>MOOC课程http://mooc.study.163.com/course/US ...