【问题标题】:How does flask pass 2 arguments?烧瓶如何传递 2 个参数?
【发布时间】:2016-04-13 08:53:09
【问题描述】:
@app.route('/report/<category>/')
def category_list(category):
    files = category_files(category)
    return render_template ('category.html',data={'data':files,'category':category})

我认为我做错了,但是如何将这 2 个参数:文件和类别传递给 category.html?

【问题讨论】:

    标签: python html flask


    【解决方案1】:

    你传入了一个变量,一个字典,名为data。它有'data' 和'category' 键。你可以在你的模板中使用data['data']和data['category']。

    但如果您希望它们成为模板中的单独变量,请分别传入这些键:

    return render_template('category.html', data=files, category=category)
    

    您仍然可以使用字典,但您应该使用 ** 关键字参数扩展语法将键作为单独的参数应用:

    variables = {'data': files, 'category': category}
    return render_template('category.html', **variables)
    

    【讨论】:

    • 我正在尝试 variables = {'data': files, 'category': category} return render_template ('category.html', **variables) 如果我想显示类别该怎么办在 html 上?我试过 {{category}} 它不起作用..
    • @ThomasXie:不起作用并没有告诉我任何事情,真的。 {{category}} 应该可以正常工作。简化您的模板并尝试一些基本测试;如果您仍有问题,请使用 minimal reproducible example 发布新问题,以便我们帮助您解决问题。
    【解决方案2】:

    试试这个:

     return render_template ('category.html', data=files, category=category)
    

    你可以传递任何你想要的变量

    【讨论】:

    • @ThomasXie 很高兴我的回答对您有所帮助
    猜你喜欢
    • 2023-03-09
    • 2017-02-21
    • 2015-04-22
    • 2022-07-09
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 2013-08-21
    • 2021-02-08
    相关资源
    最近更新 更多