首页 > 解决方案 > 重定向到同一页面但添加动态路由

问题描述

我正在构建一个 web 应用程序,您可以在其中将 Player-Profiles 添加到表中以进行比较。我已经将所有更改发布到同一个 URL,现在我发现所有用户都可以看到这些更改。

.../stats?id=237我考虑了如何解决这个问题:我尝试为添加到表中的每个配置文件(对于一个配置文件).../stats?id=237id=335(对于两个配置文件)来个性化 URL,而不是 url .../stats 。

统计方法:

@app.route('/stats/', methods=['POST', 'GET'])
def pstats():
    ...
    ...
    urla= [237, 335]
    return redirect(url_for('pstats', data = urla ))
  1. 路线:.../stats 在此处输入图像描述
  2. 路线:.../stats?id=237 在此处输入图像描述
  3. 路线:.../stats?id=237id=335 在此处输入图像描述

如何pstats动态编写看起来像 1. route 或 2. route 的路由?

标签: flaskurlroutes

解决方案


用于request.args获取传递给您的路由的查询参数。

@app.route('/stats/', methods=['POST', 'GET'])
def pstats():
    id = request.args['id']

传递idurl_for生成包含查询参数的 URL。

url_for(url_for('pstats', id=id))

推荐阅读