赞
踩
由于项目中代码比较多了,在P18的时候我们新建一个项目,创建后是这个样子的
项目名称为 second_bule_print,这个blue我写错了,但是后面截图还是按这个名字走的,我就不改了
flask中的蓝图是多个路由与视图集成的产物,相当于django中的子应用,创建蓝图的目的是方便复用与维护
蓝图可以有自己的模板,静态文件,但是蓝图并不是一个完整的应用,不能独立运行
目录
1 与应用对象在同一文件的蓝图
与应用对象在同一文件的蓝图是这样做的,首先创建一个蓝图对象,然后在蓝图中写路由和视图,最后把蓝图放到应用对象中
这里面蓝图的名称user是给开发者看的,和路由没有关系,创建的路由必须是之前没有的,当前代码我们还是访问127.0.0.1:5000
为了方便使用与记忆,我们一般会在app的路由中,加入以蓝图名称命名的前缀
这样我们就需要访问 127.0.0.1:5000/user
我们大多数情况是在别的文件中定义蓝图,首先我们要在项目路径下创建一个python包
创建之后我们发现会有一个空的 __init__.py,我们在里面创建一个蓝图对象
之后在路径other_bule_print 创建一个py文件来存放视图,这里我们就叫views.py
在vies.py中导入蓝图后,定义一个蓝图中的路由与视图
之后我们回到我们开服务的main.py,先从文件中导入蓝图,之后注册
这里我们如果直接访问的话是404,这是因为没加载views.py,所以我们要在other_bule_print的__init__.py中加载views.py
这里要注意这个导入一定要写在定义蓝图的后面,要不到视图哪里会找不到other_bule_print
修改之后我们呢再访问一下
创建蓝图对象时加入参数static_folder
我们在这里创建一个文件夹static,然后放一张图片进去
之后我们访问一下 http://127.0.0.1:5000/other_bule_print/static/flask.png
发现可以访问到这个图像
使用static_url_path可以定义静态文件的url,template_folder可以定义模板文件路径,在这里就不展示了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。