当前位置:   article > 正文

看完这篇文章,傻瓜都能学会蓝图基本使用!_工业巨头蓝图代码

工业巨头蓝图代码

在讲如何使用蓝图前,我们先看看蓝图的作用:

蓝图作用:

用于将项目模块化、方便大型项目管理

我们先新建一个blueprit_demo项目,例图如下:

为了方便讲解蓝图如何使用,我跟大家举个例子!假设我们要做一个大型的门户网站,里面有新闻版块、汽车版块、美食版块.....等版块,如果把所有版块都放在主app文件中,随着项目越做越大,网站项目维护就很蛋疼。为了方便管理呢,我们新建一个blueprint包,例图如下:

然后在该包下新建新闻(news.py)、汽车(car.py)、美食(food.py)版块,例图如下:

选择news.py文件,在该文件输入以下代码 

  1. #从flask中导入蓝图
  2. from flask import Blueprint
  3. #实例化一个蓝图对象,第一个为蓝图名字,第二个参数为inport_name,跟flask项目中的inport_name一样
  4. news_bp = Blueprint("news",__name__)
  5. #news_bp用法跟app相似
  6. @news_bp.route("/list")
  7. def list():
  8. return "list page"
  9. @news_bp.route('/arctire')
  10. def arctire():
  11. return "arctire page"

OK,蓝图写好了,心急的小伙伴迫不及待的打开浏览器,输入127.0.0.1:5000/list,然后出现大大的几个字:Not Found!!嘿!!!我们不是写好了蓝图吗?为啥访问不了勒??原因就是我们写好了蓝图,并没有将蓝图注册到主app文件中。

既然知道了原因,我们就在主app文件(blueprint_demo.py)输入以下代码:

  1. #从news.py文件中导入news_bp
  2. from blueprint.news import news_bp
  3. #将news_bp注册到app中
  4. app.register_blueprint(news_bp)

blueprint_demo.py文件完整代码如下:

  1. from flask import Flask
  2. #从news.py文件中导入news_bp
  3. from blueprint.news import news_bp
  4. app = Flask(__name__)
  5. #将news_bp注册到app中
  6. app.register_blueprint(news_bp)
  7. @app.route('/')
  8. def index():
  9. return "index page"
  10. if __name__ == "__main__":
  11. app.run(debug=True)

然后我们运行主app文件,打开浏览器输入http://127.0.0.1:5000/list,结果如下:

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号