gpt4 book ai didi

python - 从模板中插入 HiddenField 的值 - Flask

转载 作者:行者123 更新时间:2023-11-28 22:39:36 24 4
gpt4 key购买 nike

我是 Python/Flask 编程的新手,我在返回从模板中插入的 HiddenField 的值时遇到了一些问题。

这是我的表单类:

class DownloadForm(Form):
link = HiddenField()
download = SubmitField('Download')

这是我的模板“Material”,其中包含一个表格,我在其中放置来自 DB 的 Material 以及我试图放置 HiddenField 值的位置:

    <tbody>
{% for mat in materials %}
<tr>
<td>{{ mat.author }}</td>
<td>{{ mat.title }}</td>
<td>{{ mat.subject }}</td>
<td>{{ mat.description }}</td>
<td>{{ mat.faculty }}</td>
<td>{{ mat.professor }}</td>
<td>
<select class="form-control">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
</td>
<form method="POST" enctype="multipart/form-data" action={{url_for('download')}}>
{{ formDownload.link(value = '{{mat.link}}')}}
<td>{{ formDownload.download }}</td>
</form>
<td>{{ formDelete.delete }}</td>
</tr>
{% endfor %}
</tbody>
</table>

问题出在我想插入 HiddenField 值的这行代码中。

{{ formDownload.link(value = '{{mat.link}}')}}

我想在此处插入值,因为每个 SubmitField 都链接到表的特定行。变量 ma​​t.link 包含用户想要下载的资料的 url,但我无法使用函数 form.request['link'] 获取此值。

这是提交表单时我的函数下载:

@app.route('/download', methods=['GET', 'POST'])
def download():

form = DownloadForm(csrf_enabled=False)

if form.validate_on_submit():
link = request.form['link']
return redirect(url_for('download',
filename=link))

我已尝试调试我的应用程序,变量链接 结果等于 "mat.link" 作为字符串。有人能帮助我吗 ?谢谢

最佳答案

在您的模板中,'{{mat.link}}' 是一个字符串。如果你想要 mat.link 的值,你需要将它作为一个变量来使用。

{{ formDownload.link(value=mat.link) }}

关于python - 从模板中插入 HiddenField 的值 - Flask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34577849/

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