一、调试模式(debug模式)
1、设置debug模式
在app.run()中传入关键字参数debug,app.run(debug=Ture),就设置当前项目为debug模式。如下所示:
代码语言:javascript复制# 从flask框架中导入Flask类
from flask import Flask
# 传入__name__初始化一个Flask实例
app = Flask(__name__)
# app.route装饰器映射URL和执行的函数。这个设置将根URL映射到了hello_world函数上
@app.route('/')
def hello_world():
return 'Hello World!'
# 运行本项目
if __name__ == '__main__':
app.run(debug=True)
2、debug模式的两大功能
(1)当程序出现问题的时候,可以在网页中看到具体的错误信息。如果没有设置debug模式,出现错误时在网页上只是出现“内部服务器错误”的信息。
(2)当你的程序已经部署成功,这时你修改你的程序代码,在debug模式下程序会检测到代码的改变并且会自动重新加载(有种热部署的感觉),就不需要手动重启了。
二、巧用配置文件来配置参数config.py
1、 新建一个config.py
文件
比如之前的那种配置Debug模式的方法可以通过config文件来配置的。
config.py中:
代码语言:javascript复制DEBUG = True # 改成False就可以关闭DEBUG模式
2、在主app文件中导入这个文件,并且配置到app
中,示例代码如下: (app.config.from_object(config))
# 从flask框架中导入Flask类
from flask import Flask
# 传入__name__初始化一个Flask实例
app = Flask(__name__)
app.config.from_object(config) # 这样也可以配置成DEBUG模式
# app.route装饰器映射URL和执行的函数。这个设置将根URL映射到了hello_world函数上
@app.route('/')
def hello_world():
return 'Hello World!'
# 运行本项目
if __name__ == '__main__':
app.run(debug=True)
3、还有许多的其他参数,都是放在这个配置文件中,比如连接数据库相关的参数
三、URL传参数
- 参数的作用:可以在相同的URL,但是指定不同的参数,来加载不同的数据。
- 在flask中如何使用参数 (1)参数需要放在两个尖括号中 (2)视图函数中需要放和url中的参数同名的参数。四、URL反转
@app.route('/article/<id>')
def article(id):
return '你请求的参数是:%s' % id
四、URL反转
反转的意义在于通过视图名称可以获得与之对应的url
使用方式为
(1)从flask导入url_for
代码语言:javascript复制from flask import url_for
(2)在url_for中传入视图名称
代码语言:javascript复制url_for('page_name_view')
五、页面跳转(redirect)和重定向
- 用处:在用户访问一些需要登录的页面的时候,如果用户没有登录,那么可以让她重定向到登录页面。
- 代码实现:
from flask import Flask,redirect,url_for
redirect(url_for('login'))