关于Flask
,之前也只是略接触过,借这次机会,正好进行一些深入学习,现将学习笔记记录下来。
这次的学习将做一个专题来进行学习,首先会做一个基于flask的简单的web小项目——学生信息管理系统,然后后面可能还有相关技术的学习分享。
Flask 是一个微型的 Python 开发的 Web 框架,基于Werkzeug WSGI工具箱和Jinja2 模板引擎。 Flask使用BSD授权。 Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
Flask
的安装1.只要熟悉Python
第三方包安装的同学都应该能轻而易举完成Flask
的安装:
pip3 install flask
2.在 PyCharm 上的 settings 上进行搜索flask安装:
我们来用一个最小的应用测试一下flask
是否成功安装:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == "__main__":
app.run(debug=True, port=8090)
关于上述代码解释如下:
从flask
中导入Flask
类后,用该类创建一个名为app
的对象,其中__name__
在当前文件中就指的是__main__
,因此,当该脚本文件执行的时候,自然会调用到app.run(...)
这一行代码。
@app.route
是描述符,这里的route
是路由,所谓的“路由”就是用来访问我们编写的程序的有效网络子地址,这里的/
表示网站的根目录,即只要打开我们开发的网站名称,就自动调用的内容。
hello_world()
函数被@app.route
修饰,即意味着当用户访问由该修饰符指向的路由时,程序要调用的函数,这里面只是简单的返回一个字符串,对于浏览器而言,字符串会直接显示在一个空白的页面上。
当我们在浏览器地址栏输入http://127.0.0.1:8090/
,则会显示出hello world!
字样,如下图所示:
这就是一个完整的flask
程序了。
HTML
模板只返回一个hello world!
字符串没啥意思,要是返回一串HTML
代码又会如何呢,下面我们来在上述代码中再添加一个路由,代码如下:
@app.route('/html')
def greet():
user = {'username':"king!坤", 'age':20}
return f'''
一个简单的模板
你好, {user["username"]}! 你今年 {user["age"]} 岁!
'''
此时,我们只需要将项目运行一下,在浏览器的地址栏输入http://127.0.0.1:8090/html
即可看到下图:
本文对flask
的安装及运行了一个小程序,这里将HTML
代码嵌入函数中显得非常丑陋,那能不能将上述代码中的HTML
代码分离出来呢,答案是可以的,因为flask
中已经替我们设计了一个非常优秀的jinja2
模板了,接下来我们继续学习了解。
Flask学习笔记(二)
Flask学习笔记(三)
Flask学习笔记(四): Flask与数据库连接