基于flask的在线笔记共享管理系统【6】
本篇文章主要介绍一个web开发的一个框架,了解清楚这里的基本原理与应用方法,为本次项目开发做基础知识的铺垫
flask框架简介及原理
flask是一个采用python语言实现其基本功能的web开发框架,具有代码简介易于拓展的特点,因而又被称为==“微框架(microframework)”==,
一。flask具有很强的扩展性和兼容性,没有固定的数据库的模板引擎,使用者可以通过自己的需求配置不同的数据库。
二。Flask主要包括Werkzeug和Jinja2两个核心函数库,Werkzeug负责业务处理方面的功能,Jinja2负责安全方面的功能,其 WSGI工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。
这里对flask不做具体的介绍,我们只需要明白其基本的模式即可满足本次项目开发的需求。有兴趣的同学可以参考百度百科的介绍
传送至 flask百度百科
也可以通过flask的使用文档了解更多的知识。
传送至flask文档
flask的基本模式
flask为一个URL分配一个视图函数,用户访问该URL时会同时触发该视图函数,并执行函数中的操作,将结果显示给浏览器。
这里我们通过一个简单的程序了解一下,flask的基本操作。
首先你一定安装了flask的库才行。可以使用下面的代码安装:
pip install Flask
安装好以后就可以开始本次的实验了
第一步导入flask模块。
from flask import Flask
第二步,实例化flask模块,创立一个程序
app = Flask(__name__)
第三步,编写视图函数
@app.route('/')
def hello_world():
return 'Hello, World!'
为了防止引用后运行代码。设置只有在当前文件中可以运行。
if __name__ == '__main__':
app.run()
代码敲完以后就可以运行了,下面是通过pycharm运行这段代码的结果。
然后在浏览器中输入上面生成的网址,就可以看到代码的运行结果了。
这里如果已经安装了flask的话可以用pycharm直接新建一个flask的项目项目中会自动生成上述代码。具体操作如下:
由于这里的flask是我之前安装的,配置过程可能不是特变详细。如果上述操作不能实现的话,请参考flask的使用文档。《flask安装》
这只是一个简单的代码实现的网页显示hello world,但是本次项目需要实现一个拥有友好交互界面的web系统。所以需要结合一定的HTML语言实现页面渲染。
这里我们不对这个项目做详细介绍,详细的介绍在后续的文章中会有详细的讲解。
这里我们编写一段简单的HTML代码在浏览器中显示一张图片。代码如下,只需要在return中写入代码即可运行。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return'''
<html>
<head>
<meta charset="utf-8">
<title>显示一个图片</title>
</head>
<body>
<p>
<img src = "../static/2.jpg" width="100%" height="100%" />
</p>
</body>
</html>
'''
# 渲染模板
if __name__ == '__main__':
app.run()
如图,HTML成功渲染,但是在实际的开发过程中HTML的代码一般会非常的多,此时我们需要引入一个模板render_template。返回的HTML字符串可以放在一个HTML文件中,这个文件就是模板。
from flask import render_template
引入这个模块以后,就可以将HTML的文件单独写出来了,所有的HTML渲染文件存在templates文件目录下。并且templates文件与app.py在同一目录下。这里要严格遵守模板的文件结构,否则会找不到对应的模板文件。
如图:
此时home.HTML的文件代码如下;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>显示一张图片</title>
</head>
<body>
<p>
<img src = "../static/2.jpg" width="100%" height="100%" />
</p>
</body>
</html>
app.py文件代码中,返回return render_template(‘home.html’)。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('home.html')
# 渲染模板
if __name__ == '__main__':
app.run()
render_template(‘参数’)。中的参数是要进行渲染的HTML的文件名称。关于render_template详细的信息可以参考API如图
运行结果如下,和直接在app.py中输入HTML代码,效果一样,但是对于大型的项目开发更方便。
到这里我们的flask的基础简介也就完成了,下一篇文章将向大家介绍,怎样实现浏览器和应用程序交互。