【发布时间】:2022-01-20 00:33:36
【问题描述】:
我正在尝试渲染一个 html 表单并使用 sqlalchemy 传入一个表格行。因此,表单将显示所有填充行数据的输入字段,目的是编辑并将其发送回数据库。但不知何故,表单只显示两个输入字段,都是文本类型。整数字段和单选字段不显示行的每个对应值,尽管这些值存在并且不是无。
路线如下:
@app.route('/editar/<string:id>')
def hotel_edit(id):
form = HotelForm()
viaje = arribos.query.get(id)
return render_template('edit_hotel.html', form=form, viaje=viaje)
这是显示 wtform 对象的 html 文件 + 试图让对象“viaje”显示值但没有运气:
{% block body %}
<div id="main_form">
<form action="/" method="post" id="ingresos">
{{ form.hidden_tag() }}
<fieldset>
<div class="checks" id="inout">
{{ form.check.label }}
{{ form.check(value=viaje.check) }}
</div>
<div class="horafecha">
{{ form.fecha.label }}
{{ form.fecha(value=viaje.fecha) }}
{{ form.hora.label }}
{{ form.hora(value=viaje.hora) }}
</div>
<div class="textbox">
{{ form.vuelo.label(class="inputtext") }}
{{ form.vuelo(class="inputtext", value=viaje.vuelo) }}
{{ form.habitacion.label(class="inputtext") }}
{{ form.habitacion(class="inputtext", value=viaje.habitacion) }}
{{ form.huespedes.label(class="inputtext") }}
{{ form.huespedes(class="inputtext", value=viaje.huespedes) }}
{{ form.valijas.label(class="inputtext") }}
{{ form.valijas(class="inputtext", value=viaje.valijas) }}
</div>
<div class="checks" id="puerto">
{{ form.puerto.label(class="puertos") }}
{{ form.puerto(class="puertos", value=viaje.puerto) }}
</div>
<div class="buttons">
{{ form.enviar }}
</div>
</fieldset>
</form>
</div>
{% endblock %}
这是表单(尚未设置样式): form
如您所见,大多数输入字段都缺少值。有谁知道如何解决这个问题?
另外:如果有帮助,我可以向您展示包含整个表单的类定义的 form.py 文件。
【问题讨论】:
标签: python flask sqlalchemy flask-wtforms