Flask简介:

Flask是一个使用 Python 编写的轻量级 Web 应用框架,基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。

Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用 Flask-extension 加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。

Flask的优点就不必多介绍了,这里主要是想给想学习Flask框架的小伙伴一些完整的教程,帮助其更好的学习和掌握Flask框架。

基础教程:Python Flask Web框架

该教程通过使用Python Flask Web框架来创建简单的博客,从而掌握Flask框架的环境安装、运行调试、静态文件、渲染模板、数据的请求接收以及重定向、响应和会话等知识,带你入门学习Flask框架。

实验列表:

教程一共9个实验,循序渐进的学习Flask框架:

  • Flask介绍及安装
  • Flask运行及调试模式
  • 路由
  • 静态文件及渲染模版
  • 接受请求数据
  • 重定向、响应、会话和扩展
  • Flask项目实战1
  • Flask项目实战2
  • Flask项目实战3

实战项目一:基于 Flask 及爬虫实现微信娱乐机器人

该项目基于 Flask Web 框架开发的娱乐级别的微信公众号后台,学习并实践 python 编程,Flask Web 开发以及微信公众平台开发机器人的基本步骤。

效果图:

实战项目二: 基于Flask/RethinkDB实现TODO List

使用 RethinkDB 作为数据库后端,Backbone.js 作为前端的技术栈,实现一个清单应用。从中学习 Flask Web 应用框架,及 Rethinkdb 文档型数据库和 Backbone.js web开发框架。

效果图:

实战项目三:基于 Flask 与 MySQL 实现番剧推荐系统

该项目基于 Python 的 Flask 框架和 MySQL 实现的简单的番剧推荐系统,通过该项目学习如何用 Python 连接 MySQL 数据库,如何查询和展示数据及设计推荐算法等知识。

效果图:

最终将实现下面的效果,输入 User Number,这里使用数字代替,页面输出为番剧名称和描述,使用字母代替:

实战项目四:Flask + VueJS 全栈 Web 开发实战

该项目使用 Python 的 Flask 框架和 VueJS 实现留言板以及论坛应用,通过两个实战项目让大家掌握 Flask + VueJS 进行 Web 开发的能力。

其中:

  • 留言板主要是为带大家熟悉 Web 开发以及 VueJS 中的一些基本概念,同时也锻炼大家的编码能力。不要觉得留言板是个简单的项目,当然,它可以做的很简单,比如只有表单的提交和反显,它也可以做的很复杂,甚至可以作为一个创业项目,比如国内的多说和国外的Disqus。

  • 论坛项目是基于 flask,vue,vue-router,vuex,axios 的等实现的一个较为综合的 SPA 应用,实现了包括用户注册与登录,markdown 编辑与预览,发布帖子,评论帖子,帖子话题筛选,瀑布流加载等功能。

留言板效果图:

论坛效果图:

实战项目五:Flask 实现简单聊天室

该项目实现一个基于Server-Sent Event和Flask简单的在线聊天室,从而学习在实际开发中使用Flask框架。

效果图:

经过以上6个教程循序渐进的学习Flask框架,相信对于这个框架已经有一定的认知,也能在实际开发中应用了,所以剩下的就是多多动手练习开发已达到熟练的程度。

最后:

  • 如果你想要学习更多Python教程,开发更多Python项目,点击这里即可查看,Python基础+实战项目任你选择;
  • 如果你想要零基础入门学习Python,点击Python工程师学习路径,跟着路径教程学;

Flask框架从入门到实战的更多相关文章

  1. flask 框架快速入门

    flask 框架快速入门 搭建一个简易flask项目 首先使用 Pycharm创建flask项目 运行flask项目 1.使用Pycharm搭建flask项目 (如果Pycharm新建项目中未出现该图 ...

  2. Flask框架的学习与实战(一):开发环境搭建

    Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2.很多功能的实现都参考了django框架.由于项目需要,在 ...

  3. Flask框架的学习与实战(二):实战小项目

    昨天写了一篇flask开发环境搭建,今天继续,进行一个实战小项目-blog系统. blog系统很简单,只有一个页面,然而麻雀虽小五脏俱全.这里目的不是为了做项目而做项目,这篇文章本意是通过这次练习传达 ...

  4. flask框架基础入门一

    首先:flask是一个基于Werkzeug,Jinja2的一个python的微服务框架. 安装flask框架: pip install flask 一个最小的最简单的flask应用: from fla ...

  5. Flask框架的学习与实战(三):登陆管理

    继续flask的学习之旅.今天介绍flask的登陆管理模块,还记得上一篇中的blog小项目么,登录是咱们自己写的验证代码,大概有以下几个步骤: 1.在登录框中输入用户名和密码 2.flask view ...

  6. Flask框架2

    Flask框架的学习与实战(二):实战小项目   昨天写了一篇flask开发环境搭建,今天继续,进行一个实战小项目-blog系统. blog系统很简单,只有一个页面,然后麻雀虽小五脏俱全.这里目的不是 ...

  7. flask框架学习

    第一:flask框架基础入门 第二:flask框架框架概述 第三:flask框架请求数据 第四:flask框架路由系统 第五:flask框架静态文件 第六:flask框架模板引擎 第七:flask其他 ...

  8. Flask 框架入门

    Flask Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 安装 Flask 依赖两个外部库, We ...

  9. Flask 入门一( flask 框架和 flask-script 库)

    Flask 入门一( flask 框架 和 flask-script 库) 一.Flask框架: 1.简介 Flask是一个非常小的Python Web框架,被称为微型框架:只提供了一个稳健的核心,其 ...

随机推荐

  1. ajax 获取服务器返回的XML字符串

    前台 解析失败不会抛出任何异常, 只会返回一个给定的错误文档 let l = console.log let http = ajanuw.create({ uri: 'http://localhost ...

  2. 现在越来越喜欢用ajax传值了,这样能让网站的体验性很好,今天就总结了一下常用的

    这是不用循环的方法 就是传过来的是一位数组 //编辑党建分类 function gk_bj(id){ $.post("{:U('Luser/lei_edlt')}",{id:id} ...

  3. http://linux-mtd.infradead.org/doc/nand.html nand

    http://linux-mtd.infradead.org/doc/nand.html

  4. <转>记dynamic的一个小坑 -- RuntimeBinderException:“object”未包含“xxx”的定义

    →转载地址← 创建一个控制台程序和一个类库, 在控制台创建一个匿名对象,然后再在类库中访问它,代码如下: namespace ConsoleApplication1 { class Program { ...

  5. CH 4401/Luogu 4168 - 蒲公英 - [分块]

    题目链接:传送门 题目链接:https://www.luogu.org/problemnew/show/P4168 题解: 经典的在线求区间众数的问题,由于区间众数不满足区间可加性,所以考虑分块,假设 ...

  6. 闭区间套定理(Nested intervals theorem)讲解2

    ①确界与极限,看完这篇你才能明白 http://www.cnblogs.com/iMath/p/6265001.html ②这个批注由这个问题而来 表示$c$可能在$\bigcap_{n=1}^{\i ...

  7. 【单调栈】hdu 6319 杭电多校Problem A. Ascending Rating

    http://acm.hdu.edu.cn/showproblem.php?pid=6319 从后往前更新,维护一个递减单调栈(队列) 最近很多题都是单调栈... #define _CRT_SECUR ...

  8. zabbix监控Windows-server

    官网下载客户端 https://www.zabbix.com/download 2.创建自定义文件夹(路径任意),我创建的为C:\zabbix 3.将下载的文件存放至该目录,注意操作系统位数,去对应b ...

  9. python知识点杂记

    1. Python没有 ++, --操作. 2. Join比+快:tuple比list快 3. Dict的key是区分大小写的 4. 参数顺序:无默认值参数,有默认值参数,tuple,dict 5. ...

  10. AndroidStudio_Button

    这里回顾一下Button的使用方法: 1.在page1.xml文件中定义一个按钮控件 <Button android:id="@+id/btn_textview" andro ...