flask 高级编程一

    xiaoxiao2022-07-07  216

    鱼书:http://www.yushu.im/

    一定要定位自己的产品,然后慢慢扩展自己的功能

    最开始,做最核心的功能

    安装:

    使用pipenv----安装pipenv----启动pipenv可以代替virtualenv

    安装各种包

    pipenv:使用pipenv创建一个虚拟环境和项目是绑定 每一个项目都需要一个虚拟环境

    sudo pip install pipenv 不能用pip3

    pipenv install pipenv shell 激活虚拟环境 exit

    pipenv install flask pipenv uninstall flask pipenv graph 查看安装的版本

    Navicat xampp pycharm

    基于类的视图----函数是不能继承的 视图函数就是MVC中的C

    @app.route("/hello/") 重定向:

    只要加入debug=True,就会自动重启,自动刷新,还把错误情况,详细打印出来

    通过核心对象来注册:

    # @app.route("/hello") def hello(): return "hello world" app.add_url_rule('/hello', view_func=hello) 都可以用这个方式 这个是原理 flask是进行了封装,使用方便弄成@app.route("/hello") 装饰器

    ip地址:

    app.run(host="0.0.0.0", debug=True) 这个只要是本机的网卡使用

    配置文件 配置文件都要大写,相当于都是常量,常量一般都要大写

    from flask import DEBUG 可以当做模块老导入 或者这个方法 app.config.from_object('config') 可以导入配置文件,接收的是一个模块的路径 模块路径相当于是相对路径了嘛 这个是载入配置文件 读取配置文件 如果通过以上的方法中使用,flask中规定必须要大写,DEBUG默认是false, app.config['DEBUG']

    生产环境使用的服务器是 Nginx+uwsgi,就可以不启动自带的服务器

    视图函数:

    # status code 状态码 404是找不到的,200是正常访问 状态码只是一个标识,不会影响内容 # content-type http headers # content-type = text/html 默认情况下 # Response 对象 @app.route('/hello') def hello(): return '<html></html>'

    Resonse

    headers = { 'content-type':'application/json', 'location':'http://www.bing.com' } return '<html></html>', 301, headers
    最新回复(0)