简介
- 第一部分
Flask实例。学习使用Flask开发,构建功能完备的Web应用程序。我们开发了动态的头条新闻应用程序,可显示最新的新闻标题以及最新的货币和天气信息。在项目二中,我们构建了由MySQL数据库支持的犯罪地图应用程序,允许用户提交犯罪信息和犯罪地点,以便绘制区域内的危险区域和其他犯罪趋势。在最后的项目中,我们将Flask与更多现代技术结合在一起,例如Twitter的Bootstrap和NoSQL数据库MongoDB,以创建Waiter Caller应用程序,允许餐厅顾客轻松地将服务员叫到他们的桌子。
- 第二部分
Flask框架菜谱。涉及Flask的不同配置方式,如何使用模板并学习ORM和视图层。您将看到如何编写管理界面,随后进行错误调试和记录。最后,你会了解平台上的不同部署。
- 第三部分
掌握Flask,从简单的Flask应用程序展示模型 – 视图 – 控制器(MVC)体系结构。然后扩展用户登录和注册,NoSQL查询,REST API,管理界面、单元测试等。最后讨论不同平台部署Flask应用程序,每个应用程序的优缺点以及如何部署每个应用程序
- 第四部分
开发一个实用的自动化测试平台。
当然上面的图比较复杂,我们教学会使用简化版本
1-Hello, World!
- Flask简介
开发环境
Hello,World!
部署
Flask简介
Flask是Python Web开发的微框架。它只实现了核心功能(包括路由),更多高级功能(包括身份验证和数据库ORM)需要使用扩展。这样可以快速上手且有灵活性。Django则相反,有自己的ORM和认证。
开发环境
用pip安装即可。 演示代码为unbuntu 16 + python3
Hello,World!
#!pythonfrom flask import Flaskapp = Flask(__name__)@app.route("/")def index(): return "Hello, World!"if __name__ == '__main__': app.run(port=5000, debug=True)
执行
$ python3 hello.py * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) * Restarting with stat * Debugger is active! * Debugger PIN: 274-360-321127.0.0.1 - - [08/Mar/2018 11:28:11] "GET / HTTP/1.1" 200 -
用浏览器打开 http://localhost:5000/
可以看到 “Hello, World!”
部署
# apt-get install apache2# apt-get install libapache2-mod-wsgi-py3# cd /var/www# cp ~/Chapter01 -r firstapp# vi hello.wsgiimport syssys.path.insert(0, "/var/www/firstapp")from hello import app as application# cd /etc/apache2/sites-available# vi hello.conf<VirtualHost *> ServerName example.com WSGIScriptAlias / /var/www/firstapp/hello.wsgi WSGIDaemonProcess hello <Directory /var/www/firstapp> WSGIProcessGroup hello WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all </Directory></VirtualHost># a2dissite 000-default.conf# a2ensite hello.conf# service apache2 reload# tail –f /var/log/apache2/error.log
参考资料
- 讨论qq群144081101 591302926 567351477 钉钉免费群21745728