Прошу у вас помощи, 2 дня бьюсь будто об стену, решить сам не могу. В питоне, фласке и формах совсем новичок, сам занимаюсь back'ом на C#, но босс сказал “Нужно решить”…
На страницу в radioField я вывожу список объектов. По клику на элемент из списка мне нужно вывести более подробную информацию о выбранном объекте в другие контролы:
<tr><th>Дата создания:</th><td>{{ form.createDate }}</td></tr> <tr><th>Автор:</th><td>{{ form.author }}</td></tr> <tr><th>Описание:</th><td>{{ form.description }}</td>
Понимаю что должно быть событие, которое запускается при клике на элемент из списка, но как это реализовать ?
Прошу, не пинайте сильно, в этих технологиях я совсем зеленый.
Поиск особо не помог, возможно из-за нехватки опыта в данном стеке не определил что какая-либо тема могла являться ответом на мой вопрос.
Код всех участвующих “компонентов” ниже.
Заранее благодарю за отклик и помощь.
Есть форма:
class SambaGroupChangesForm(FlaskForm): id = HiddenField('Id') author = TextField('Author') createDate = TextField('CreateDate') description = TextField('Description') changeslist = RadioField('Changes', choices = [])
Html страница:
{% extends "base.html" %} {% block content %} <form action="" method="post" name="create"> {{ form.hidden_tag() }} <div class="row d-flex flex-wrap"> <div class="col-4"> <table class="table table-hover table-sm"> <thead class="thead-dark"> <tr> <th scope="col"></th> <th scope="col">Группы</th> </tr> </thead> <tbody> {% for subfield in form.changeslist %} <tr> <td>{{ subfield }}</td> <td>{{ subfield.label }}</td> </tr> {% endfor %} </tbody> </table> </div> <div class="col-4"> <table class="table table-hover table-sm"> <thead class="thead-dark"> <tr> <th scope="col"></th> <th scope="col">Компания</th> <table> <tr><th></th><td>{{ form.id }}</td></tr> <tr><th>Дата создания:</th><td>{{ form.createDate }}</td></tr> <tr><th>Автор:</th><td>{{ form.author }}</td></tr> <tr><th>Описание:</th><td>{{ form.description }}</td> <tr><th><input type="submit" class="btn btn-primary" value="Создать"></th></tr> </table> </tr> </thead> </table> </div> <div class="col-4"> {% with messages = get_flashed_messages(with_categories=true) %} {% if messages %} {% for message in messages %} {% if "Error" not in message[1]: %} <div class="alert alert-success"> <strong>Успешно! </strong> {{ message[1] }}</div> {% endif %} {% if "Error" in message[1]: %} <div class="alert alert-warning"> {{ message[1] }}</div> {% endif %} {% endfor %} {% endif %} {% endwith %} </div> </div> </form> {% endblock %} {% endblock %}
и маршрут:
@app.route('/sambaGroupChanges/<id>', methods=['GET', 'POST']) def SambaGroupChanges(id): form = SambaGroupChangesForm(request.values) form.changeslist.choices = [(group.EntityId, group.CreateDate) for group in SambaGroupService().GetChanges(id)] form.id.data = id if form.is_submitted(): flash(form.changeslist.data + 'Test') else: flash('Not work') return render_template('objectChanges.html', form=form)