Допустим: если я ввожу данные во вторую форму и нажимаю на Submit второй формы , но цикл почему-то считает , что я нажимаю именно Submit первой формы и данные user.value записывает именно туда.
Можно ли вообще использовать класс формы для создания нескольких обьектов форм?
class TestForm(FlaskForm):
param1 = StringField('param1')
param2 = StringField('param2')
submit = SubmitField('start')
@app.route('/'.methods=['GET','POST'])
def index():
users = session.query(User).filter(User.id!=None).all()
forms = [TestForm for i in range(len(users))]
for form,user in zip(forms,users):
if form.validate_on_submit():
user.value = int(form.param1.data) + int(form.param2.data)
session.add(user)
session.commit()
redirect('/')
return render_template('index.html',forms=forms,users=users,count=len(forms))
{% block content %}
<table class="table table-bordered table-dark">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Модель</th>
<th scope="col">количнсто</th>
<th scope="col">бла бла бла</th>
</tr>
</thead>
<tbody>
{% for i in range(count) %}
<tr>
<th scope="row"> {{ users[i].id }} </th>
<td>{{ users[i].name }}</td>
<form action="", method="post">
{{ forms[i].hidden_tag() }}
<td>
{{ forms[i].param1(class="form-control") }}
</td>
<td>
{{ forms[i].param2(class="form-control") }}
</td>
<td>
{{ forms[i].submit(class="btn btn-primary") }}
</td>
</form>
<td>
{{ users[i].value }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}