使用 WTForms RadioField 子字段在 Flask 中显示图像
Use WTForms RadioField subfields to display an image in Flask
我正在使用 WTForm 表单尝试将路径传输到我想在 HTML 中显示的图像。我的表格基本上是这样的
from flask_wtf import FlaskForm
from wtforms import RadioField
class SelectStyleForm(FlaskForm):
images = RadioField('style image.',
choices=[(value1, label1),(value2, label2),...])
我的目标是遍历不同的选择,以在相应的单选按钮旁边显示与每个路径关联的图像。我的 HTML 模板如下所示:
{% block content %}
<form method=post>
{% for subfield in styleform.images %}
<td>{{subfield}}</td>
<p>{{subfield.label}}</p>
<img src="{{url_for('data_path', filename=subfield.label)}}"/>
{% endfor %}
</form>
{% enblock %}
现在,单选按钮与文件名(写在 <p>
标签中)一起显示,但我找不到方法让相同的名称影响到 filename
.
现在,它所指的值是:
<label for="images-1">value1</label>
有没有办法影响 url_for
函数中的 "correct" 值?
请注意,我也接受使用不同选择的 value
部分的解决方案,因为它们应该是相同的路径
好吧,通过摆弄不同的方法,我发现每个子字段都有一个 data
属性来存储 label
部分的字符串。
所以我的代码只需更改图像源即可工作:
<img src="{{url_for('data_path', filename=subfield.data)}}"/>
我最好的猜测是 .label
属性已经归因于 url_for
函数中的其他内容,这会阻止它访问与标签对应的字符串。
如果我错了,请随时纠正我,或者不要犹豫 post 更详细的答案!
我正在使用 WTForm 表单尝试将路径传输到我想在 HTML 中显示的图像。我的表格基本上是这样的
from flask_wtf import FlaskForm
from wtforms import RadioField
class SelectStyleForm(FlaskForm):
images = RadioField('style image.',
choices=[(value1, label1),(value2, label2),...])
我的目标是遍历不同的选择,以在相应的单选按钮旁边显示与每个路径关联的图像。我的 HTML 模板如下所示:
{% block content %}
<form method=post>
{% for subfield in styleform.images %}
<td>{{subfield}}</td>
<p>{{subfield.label}}</p>
<img src="{{url_for('data_path', filename=subfield.label)}}"/>
{% endfor %}
</form>
{% enblock %}
现在,单选按钮与文件名(写在 <p>
标签中)一起显示,但我找不到方法让相同的名称影响到 filename
.
现在,它所指的值是:
<label for="images-1">value1</label>
有没有办法影响 url_for
函数中的 "correct" 值?
请注意,我也接受使用不同选择的 value
部分的解决方案,因为它们应该是相同的路径
好吧,通过摆弄不同的方法,我发现每个子字段都有一个 data
属性来存储 label
部分的字符串。
所以我的代码只需更改图像源即可工作:
<img src="{{url_for('data_path', filename=subfield.data)}}"/>
我最好的猜测是 .label
属性已经归因于 url_for
函数中的其他内容,这会阻止它访问与标签对应的字符串。
如果我错了,请随时纠正我,或者不要犹豫 post 更详细的答案!