zoukankan      html  css  js  c++  java
  • Flask 入门(十三)

    上文提到的Blueprint和厉害吧?

    可是有个缺点,就是,还不够框架,因为一个功能不可能就一个文件啊?多文件怎么解决?

    还和上文项目架构一样

    1.新建两个目录,admin,function

    2.admin目录下新建三个python文件:__init__.py,super.py,user.py

    3.function目录下新建三个pythot文件:__init__.py,general.py,sys.py

    4.编写代码:

    (1).admin下的__init__.py:

    from flask import Blueprint
    
    blueprint = Blueprint('admin',__name__)
    
    from . import user
    from . import super

    (2).super.py:

    from . import blueprint
    
    
    @blueprint.route('/super')
    def index_super():
        return '欢迎登录管理员系统'
    
    
    @blueprint.route('/super/info')
    def info_super():
        return '你的身份为super'

    (3).user.py:

    from . import blueprint
    
    
    @blueprint.route('/user')
    def index_user():
        return '欢迎登录用户系统'
    
    
    @blueprint.route('/user/info')
    def info_user():
        return '你的身份为user'

    (4).function下的__init__.py:

    from flask import Blueprint
    
    blueprint = Blueprint('function',__name__)
    
    from . import general
    from . import sys

    (5).general.py:

    from . import blueprint
    
    
    @blueprint.route('/general')
    def index_general():
        return '欢迎使用general功能'
    
    
    @blueprint.route('/general/info')
    def info_general():
        return '你行使的功能为general功能'

    (6).sys.py:

    from . import blueprint
    
    
    @blueprint.route('/sys')
    def index_sys():
        return '欢迎使用sys功能'
    
    
    @blueprint.route('/sys/info')
    def info_sys():
        return '你行使的功能为sys功能'

    (7).app.py(首页):

    from flask import Flask
    from admin import blueprint as blue_1
    from function import blueprint as blue_2
    
    
    app = Flask(__name__)
    app.register_blueprint(blue_1,url_prefix='/admin')
    app.register_blueprint(blue_2,url_prefix='/function')
    
    @app.route('/')
    def hello_world():
        return '公司系统'
    
    
    if __name__ == '__main__':
        app.run()
    

    5.以下是项目框架图:

    6.打开浏览器,依次输入:

    127.0.0.1:5000/

    127.0.0.1:5000/admin/super/

    127.0.0.1:5000/admin/super/info/

    127.0.0.1:5000/admin/user/

    127.0.0.1:5000/admin/user/info

    127.0.0.1:5000/function/general/

    127.0.0.1:5000/function/general/info

    127.0.0.1:5000/function/sys/

    127.0.0.1:5000/function/sys/info

  • 相关阅读:
    华为为什么再发布2016年就已经对外露脸甚至商用的欧拉操作系统。
    更安全,仅允许当前用户运行脚本法:vscode运行python时提示无法加载文件xxx.venvScriptsactivate.ps1
    ubuntu下安装odoo 14.0框架
    安利: Swagger工具, 一个REST APIs文档生成工具
    关注Brython 项目,在浏览器中运行python,部分替代javascript
    2021年最火的前端框架
    2021 最受欢迎的前端 八 个 UI 框架
    取代os.path的模块pathlib
    Java中Int转byte分析
    基于Java的时间转换:Date、Timestamp和String时间转化
  • 原文地址:https://www.cnblogs.com/viplanyue/p/12700681.html
Copyright © 2011-2022 走看看