gpt4 book ai didi

python-3.x - 如何使用 Flask/Python 3 处理 URL 中丢失的参数

转载 作者:行者123 更新时间:2023-12-03 17:29:57 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Why dict.get(key) instead of dict[key]?

(11 个回答)



Get the data received in a Flask request

(21 个回答)


5年前关闭。




目前,我的网站上有两个下拉框,其值在提交表单时转换为两个 URL 参数“myState”和“myShelter”。例如:

https://www.atweather.org/forecast?myState=CT&myShelter=181

我现在要添加第三个框,并且会有第三个相应的参数,称为“myTrail”。我的问题是:我怎样才能做到,如果有人直接提交一个只有两个参数的 URL,浏览器不会因为错误的请求而出错?我希望用户看到页面就像选择了“myState”和“myShelter”,但“myTrail”没有被选中。

我试着找 herehere ,但我不认为这些情况与我要问的情况完全相同。我在 Python 3 下使用 Flask,目前处理这条路线如下:

@app.route('/forecast', methods = ['GET'])
def forecast(loc_state = None, loc_id = None):

"""
Handles rendering of page after a location has been selected
"""

loc_state = request.args['myState']
loc_id = int(request.args['myShelter'])

...and a bunch of other logic for rendering the page...

提前感谢您的任何见解!

最佳答案

request.args.get()方法允许获取参数(如果存在)。

# return None if the argument doesn't exist
trail = request.args.get('myTrail')

# return 'x' if the argument doesn't exist
trail = request.args.get('myTrail', 'x')

在此之后,只需处理值以返回您想要的方式。

关于python-3.x - 如何使用 Flask/Python 3 处理 URL 中丢失的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36987301/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com