创建项目

image.png
建议Python版本在3.6以上

自动生成的代码详解

  1. from flask import Flask # 从flask包中导入Flask对象
  2. # 创建一个app对象,传递参数
  3. app = Flask(__name__)
  4. # 之所以传当前的__name__,是因为在寻找模板文件时需要定位到当前的文件位置
  5. # 路由,根路由,装饰器直接传入路径名即可
  6. @app.route('/')
  7. def hello_world(): # put application's code here
  8. return 'Hello World!' # 返回字符串
  9. if __name__ == '__main__':
  10. app.run() # app启动

输出的流日志详解:

  1. FLASK_APP = app.py # 当前app的文件名
  2. FLASK_ENV = development # 当前为开发环境
  3. FLASK_DEBUG = 0 # DEBUG模式
  4. In folder I:/pythonProjects/myflask
  5. F:\Env\Anaconda3\python.exe -m flask run
  6. * Serving Flask app "app.py"
  7. * Environment: development
  8. * Debug mode: off # 在生产环境中运行
  9. * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

若想在调试模式中运行,需要设置DEBUG模式。

DEBUG模式

在Pycharm中无法在代码中更改,在终端中运行可以使用代码配置。

DEBUG和生产环境的区别

DEBUG模块允许在更改代码时通过保存文件直接重启来快速了解代码更改到应用的改变。
也就是说直接改代码就可以看到效果。
但是在生产环境模式中,需要手动重启服务才能看到效果。
DEBUG模式更加便利

image.png
image.png
在IDE中可以直接启用DEBUG
也可在代码中实现。
在一般情况下,主要使用类成员变量来配置全局信息,DEBUG也可以在其中配置。

  1. from flask import Flask # 从flask包中导入Flask对象
  2. # 创建一个app对象,传递参数
  3. app = Flask(__name__)
  4. # 之所以传当前的__name__,是因为在寻找模板文件时需要定位到当前的文件位置
  5. class Config:
  6. DEBUG = True #在此配置一个变量,或是在文件外配置
  7. app.config.from_object(Config) # 在此处导入类
  8. # 路由,根路由,装饰器直接传入路径名即可
  9. @app.route('/')
  10. def hello_world(): # put application's code here
  11. return 'Hello World!' # 返回字符串
  12. if __name__ == '__main__':
  13. app.run(debug=True) # app启动

配置文件

flask中默认了很多配置
其中以下几个是常用的配置:

名称 作用
DEBUG bool 是否开启DEBUG
JSON_AS_ASCII bool 是否以ascii返回json

JSON_AS_ASCII一般为False来保障中文的正常显示
image.png

外置配置文件

在外面新建出一个python文件,类和文件都可
image.png
配置项都为大写