Flask搭建开发环境 2019-08-17

2019-08-18  本文已影响0人  党晨鹏

1.安装pipenv  

    pip install pipenv

2.新建项目文件,并切换到该文件目录下

    mkdir myFlask(项目目录名称)

    cd myFlask

3.为当前项目创建虚拟环境

    pipenv install

        生成d的文件Pipfile和Pipfile.lock为pipenv包的配置文件,可代替原来的 requirement.txt。项目提交时,可将Pipfile 文件和Pipfile.lock文件一并提交,待其他开发克隆下载,根据此Pipfile 运行命令pipenv install --dev生成自己的虚拟环境。

    同时还可以:

        (1)像virtualenv一样用命令生成requirements 文件

            pipenv lock -r --dev > requirements.txt

        (2)通过requirements.txt安装包

            pipenv install -r requirements.txt

4.激活虚拟环境

    pipenv shell

5.推出虚拟环境

    exit

5.1.删除虚拟环境

    pipenv --rm

    其他pipenv命令可以在终端通过pipenv --help查询获得

6.安装flask(在虚拟环境下安装)

    pipenv install flask

7.升级flask的最新版本(可选)

    pipenv update falsk

8.使用IDE打开项目目录

    选择pycharm,pycharm的下载安装见:https://www.runoob.com/w3cnote/pycharm-windows-install.html

9.编写flask helloworld代码(目的测试)

    新建app.py文件

点击绿色箭头运行,Ctrl+右键点击http://127.0.0.1:5000/

10.命令行执行flask 主程序文件

    因为py文件可能引用第三方库,开发环境又是隔离的,造成本机全局不一定存在项目中安装的第三方库,执行文件报错。

    非虚拟环境执行虚拟环境的wsgi.py文件:pipenv run python wsgi.py

    虚拟环境执行项目wsgi.py文件:flask run  (启动问题:添加环境变量以后引发)--》将管理环境变量的文件.flaskenv设置为文本文档引发flask run执行错误

尚未解决(求解)

    flask --help 查看flask帮助

11.pycharm设置解释执行器和下载第三方库

    file-->settings-->project:项目名称-->project interpreter(项目解释执行器)

    点击 + 可进行下载安装第三方库(搜索包名,install package),

    manage repositories,更改下载源

12.flask的URL和端点

    flask中只需为函数附加@app.route()装饰器,并传入URL规则作为参数,就可实现URL和函数建立关联。

    @app.route('/<name>') 动态URL

    url_for() 解决当路由中url规则改变时,总能正确返回URL。url_for()函数的第一个参数为端点值,端点的默认值是视图函数的名称;第二个参数为传入的参数。url_for('index', name='Jack')

13.通过python-dotenv管理环境变量

    首先在项目的根目录创建:.flaskenv 和 .env

文件类型不是文本文件类型(注意)

    windows环境,在项目根目录下,cmd,输入:type nul>.flaskenv 创建,pycharm创建类型:文本文件(不行)

    设置使用sublime终端命令打开文件:

    安装python-dotenv, 命令:pipenv install python-dotenv

    在.flaskenv中编写:FLASK_APP=app  FLASK_ENV=development

14.更多启动选项

    flask run --host=0.0.0.0

    flask run --port=8000

15.安装watchdog检测文件变动(后端改动自动刷新)

    pipenv install watchdog --dev

    前端的css和js的浏览器缓存需要执行硬重载:Ctrl + F5 或 Shift + F5

16.flask扩展(python库,为flask提供更多扩展功能,缺点:存在兼容和质量问题)

    大部分扩展类的初始化过程:实例化该类,传入创建的程序实例app作为参数

17.项目配置

    (1)app.config['DEBUG'] = True

    (2)app.config.update(debug=True, SECRET_KEY='hello flask')

    (3)将配置变量存储到单独的python脚本JSON文件或python类中,通过config对象导入(推荐使用)

18.Flask项目的目录结构

    learntools/

            - templates/ndex.html

            - static/

                    - css/bootstrap.css

                    - js/jquery.js, popper.js, bootstrap.js

                    - font/

                    - img/

            - app.py

上一篇下一篇

猜你喜欢

热点阅读