flask初识
一,Flask介绍
框架:对同一类型的项目共性代码的封装,称为框架。
Flask是python编写的一类WEB框架,相较于其他框架来说。Flask框架更加轻量,灵活,但是对python代码能力要求高,Flask只提供了最基本web功能,其他功能需要开发者使用自己python代码实现,所以Flask项目质量由开发者能力决定的,但是,随着版本的迭代更新,许多社区,组织,三方开发了公共的Flask插件,开发者不再需要编写好多功能,转为, 下载,安装第三方插件。
二,开始Flask
1.下载:
版本要求python3.7 + Flask1.1.1
cmd下载:pip install flask==1.1.1 -i https//pypi.tuna.tsinghua.edu.cn/simple
(在此提供三个国内的下载源:
)
也可以在pycharm中用pip下载
或者在setting中在原有的python文件中添加flask包
当然,更好的选择是下载anacoda后,安装虚拟环境后,在虚拟文件中安装使用flask(因为项目所需要的的python包不多,沙盒中可以只安装项目锁需要的包,后期的封装迁移耗费小):
具体步骤为:anaconda官网中下载anaconda-->配置环境变量-->在cmd中创建虚拟环境:conda create -n 虚拟环境名 python=3.7(版本号)-->conda active 虚拟环境名-->
2.配置pycharm环境
pycharm setting中interpreter选择刚才创建并激活的沙盒环境-->在终端通过pip下载安装flask:pip install flask =1.1.1 或者在setting中的当前沙盒环境中点加号添加flask。
3.flask结构介绍:
主路径下有:
视图文件:实现功能,提供资料给用户看,模板文件:一个html文件,通过 视图函数的return render_template('模板文件名')与视图函数实现交互。models文件:通过 app.config['SQLAlCHEMY_DATABASE_URI'] = 'mysql + pymysql://root:密码/数据库名'配置数据库,通过 app .config[SQLAlCHEMY_TRACK_MULTIFICATIONS] = True 设置数据库的实时更新,通过 db = SQLAlchemy(app) 绑定数据库与实例化服务器对象,通过 class(db.Model):用来描述一个表结构,通过db.create_all()创建表。
静态资源库:static ,子目录包括 css ,js ,img,plugins..,static;模板文件库:templates,静态问件与模板文件直接联系。
4.开始第一个Flask案例:
视图函数:index.py文件中:
from flask import Flask,render_html
app = Flask(__name__)"其中的__name__标识文件的一种运行状态"
@app.route('路由')
def show():
message={name:'刘大猫',age:18}
return render_html('模板的文件名',**locals())
if __name__ == '__main__'
app.run()
template文件:
<p>{{message.name}}</p>
运行视图文件会返回一个url
url:同一资源定位符:
包括:协议部分:http//:,主机部分:网上的为域名,自己的一般为ip:port,因为未购买域名,其用来找到服务器,路由部分:用来找到服务器中的执行文件,对于视图函数,其为视图函数配置的路由,对于静态文件,为放在当前服务器的根目录的位置,根目录即为服务器启动的目录。启动web服务就是在服务器指定的目录下,启动服务,将这个目录作为根目录按照HTTP协议规则解析给用户。