от
У меня есть кнопка редактирования для каждого пользователя в таблице, и я хочу использовать только одну форму редактирования для всех них. Моя реализация кнопки редактирования:
{{ button_show_dialog('open_edit_sprint_user', 'Edit','btn

sprint_handler.py

def sprint_info(team_code, sprint_number):
    edit_sprint_user_form = forms.EditSprintUserForm(prefix='edit_sprint_user')
    if edit_sprint_user_form.validate_on_submit():
        ******do something******
    return render_template('baseop/sprint_info.html', sprint=sprint,
            edit_sprint_user_form=edit_sprint_user_form)
forms.py
class EditSprintUserForm(FlaskForm):
    value = FloatField('Mark', validators=[DataRequired()])
    description = TextAreaField('Description', validators=[DataRequired()])
    submit = SubmitField('Edit')
У меня есть функция, которая возвращает всех пользователей в моем спринте
get_users_in_sprint()
Поэтому я хочу нажать эту кнопку и редактировать разных пользователей, используя только одну форму с именем EditSprintUserForm, но теперь я могу редактировать только одного выбранного человека.              

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
Я не уверен, правильно ли я понимаю, я думаю, ключ будет в том, чтобы получить текущее отредактированное имя пользователя или идентификатор пользователя при нажатии кнопки редактирования. Простым решением является использование JavaScript, вам нужно создать скрытое поле для вашей формы, чтобы получить имя пользователя или идентификатор:
from wtforms import HiddenField

class EditSprintUserForm(FlaskForm):
    user = HiddenField('User')  #
Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...