当前位置:网站首页 > 野史 > FLASK学习杂记(一)Pycharm中DEBUG开启以及FLASK配置

FLASK学习杂记(一)Pycharm中DEBUG开启以及FLASK配置

FLASK学习杂记(一)Pycharm中DEBUG开启以及FLASK配置文章浏览阅读3.1k次,点赞4次,收藏4次。FLASK学习杂记(一)PyCharm 中debug开启问题debug的作用debug开启方法1

FLASK学习杂记(一)

PyCharm 中debug开启问题

在PyCharm中直接在程序中设置debug是无法生效的,需要在调试配置中选择对应项目并勾选上FLASK_DEBUG才能使程序中设置的debug生效,如下图。下面会赘述一下debug的作用及开启方法。

FLASK_DEBUG开启前:

在这里插入图片描述

开启:

开启后:

debug的作用

flask默认下的debug是关闭状态,开启debug后每次保存会自动刷新代码,不需要保存后重新运行。此外,debug关闭状态程序出错在前台是无法查看错误信息的。

用一个简单的错误例子 1 / 0 来对比一下

在debug关闭状态:

可以看到控制台报错,前台并未展示错误信息,且修改后并未重新开启程序。

debug开启状态:

前台和控制台皆报错,在修改成 r = 1/1后 ctrl+s会重新加载程序。

修改后保存:

在前台中可以使用控制台中提供的PIN实现一些简单的调试。

debug开启方法 1.在run()方法中设置debug=True

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello World!'
if __name__ == '__main__':
    app.run(debug=True)

2.设置对象实例

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello World!'
if __name__ == '__main__':
	app.debug = True
    app.run()

3.设置配置参数config

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello World!'
if __name__ == '__main__':
	app.config.update(DEBUG=True)
    app.run()

编码形式配置config

from flask import Flask
app = Flask(__name__)
app.config['DEBUG'] = True
@app.route('/')
def hello_world():
    return 'Hello World!'
if __name__ == '__main__':
    app.run()

也可以通过加载配置文件configs来开启debug,需要注意的是通过配置参数来开启debug时,必须大写DEBUG。

配置与配置文件

flask会在应用开始时载入配置,对于不同的应用环境,需要不同的配置,比如DEBUG、TESTING等。而不管何种方式载入配置,都可通过config来设置配置的值。

config

config实质上是一个字典的子类,可以通过字典的方式来修改相关配置值。

硬编码形式写入配置

app = Flask(__name__)
app.config['DEBUG'] = True

某些在Flask 对象中的配置可以:

app.testing = True

一次更新多个配置

前面说config是字典的子类,它同样拥有dict的update()方法,可以使用config.update()来实现一次更新多个配置。

app.config.update(
   	TESTING = True,
   	DEBUG = True,
   	SECRT_KEY = b'_5#y2L"F4Q8z\n\xec]/'		
)

配置文件

在应用包外新建一个配置文件 configs.py 来存放所有配置项,方便后期修改。

DEBUG = True
HOST = '127.0.0.1'
PORT = 5000
USERNAME = 'root'
PASSWORD = 123456

from_object()方法引入配置

app.config.from_object('configs')

import 导入

from . import configs
app.config.from_object(configs)

最后附上

上一篇: 不服不行,历史上坐火箭升官的第一人!
下一篇: 《续汉书》的“纪”所载乃

为您推荐

发表评论