• flask 的简单拆分


    创建结构如图:自己去调整

    #创建flask文件之后生成的app.py重命名为manage.py,以下代码是manage.py里面的内容
    from flask_script import Manager from app import create_app app=create_app()#调用注册的app manage = Manager(app)#模仿django,可以使用Python manage.py runserver运行程序 if __name__ == '__main__': manage.run()

     

    #创建新文件 __init__.py 。以下代码是里面的内容
    from
    flask import Flask from app.views import blue #注册app def create_app(): app = Flask(__name__) app.register_blueprint(blueprint=blue)#加载蓝图 return app
    #创建views.py文件;
    import
    uuid from flask import Blueprint, request, render_template, make_response #蓝图:一个蓝图定义了可用于单个应用的视图,模板,静态文件等等的集合。 #构建蓝图:importBlueprint()类并用参数name和import_name初始化。 # 通常用__name__,一个表示当前模块的特殊的Python变量, # 作为import_name的取值。 blue=Blueprint('first',__name__) @blue.route('/')#路由:这个相当于django的urls def hello_world(): print('快乐不分男女') return 'Hello World!' @blue.route('/get/<string:id>/') def get(id): print(id) print(type(id)) return '哈哈' #这个需要先获取一个uid @blue.route('/getuid/<uuid:uid>/') def getuid(uid): print(uid) print(type(uid)) return '呵呵呵' #生成uid @blue.route('/makeuid/') def makeuid(): uid=uuid.uuid4() print(uid) print(type(uid)) return 'uid生成成功' @blue.route('/getany/<any(a,b,c):p>/') def getany(p): return '你又黑了%s'%p @blue.route('/getmethod/',methods=['POST','GET']) def getmethod(): return '必须是POST请求' @blue.route('/getreq/') def getreq(): # print(request.method)#请求方式:默认是GET # print(request.remote_addr) # print(request.url)#http://127.0.0.1:5000/getreq/ # print(request.base_url)#http://127.0.0.1:5000/getreq/ # print(request.cookies)#打印cookie存储信息 print(request.form)#空字典 print(request.args)#空字典 print(request.files)#空字典 return "请求成功" @blue.route('/getfile/') def getFile(): # 这一步是将模板加载过来,并且转换成字符串的形式 temp = render_template("haha.html") resp = make_response(temp,502) print(temp) return resp
    #创建一个html文件,我创建的是haha.html
    <h2>今天雾霾很大,注意戴口罩</h2> <h2>远离危险区,不要随意闯红灯</h2>

     python manage.py runserver 运行程序,默认端口是5000

    点击http://127.0.0.1:5000/进入就是hello world也就是路由把这个默认成首页;

     通过路由来到达自己想去的页面

    用圈圈住的斜杠最好加上,例如:在浏览器输入框内输入127.0.0.1:5000/get/3和127.0.0.1:5000/get/3/都可以转到目的页,如果不加后面的斜杠,只能通过127.0.0.1:5000/get/3到指定页

    剩下的就不一一实验截图了

     

  • 相关阅读:
    迁移到MSYS2 与 Qt 工具链注意的几个事情(g++在链接时,符号依赖项查找遵循从左至右的顺序,但qmake会自动合并造成错误。使用脚本给Mingw32-make创造出一个局部的VC编译环境)
    MSYS2 瘦身小攻略(使用junction)
    Boost.Http
    MySQL中临时表的基本创建与使用教程(CREATETEMPORARY TABLE)
    Javascript设计模式
    CORS
    axure & Markman
    JSON序列化那点事儿
    软件开发生涯
    CoffeeScript NgComponent
  • 原文地址:https://www.cnblogs.com/liangliangzz/p/10079623.html
Copyright © 2020-2023  润新知