сделать колбу MultipleSelectField с выделенными выделенными значениями - PullRequest
0 голосов
/ 18 декабря 2018

В моем приложении для колб мне нужно отрисовать форму, которая имеет MultipleSelectField с некоторыми уже выбранными параметрами .Я сделал это успешно, но проблема в том, что они не выделены , и, таким образом, пользователь не может знать, какие параметры уже выбраны , что также позволяет их отключить.Любые идеи о том, как я могу сделать это из бэкэнда или даже с помощью ванильного JavaScript.Вот функция представления, которая отображает форму:

@home.route('/edit/<int:id>', methods=['GET', 'POST'])
@login_required
def edit_post(id):
    post = Post.query.get_or_404(id)
    if current_user != post.author and not current_user.can(Permission.ADMINISTER):
        abort(403)
    form = PostForm()
    form.tag.choices = [(tag.id, tag.name) for tag in Tag.query.order_by('name')]
    if form.validate_on_submit():
        post.body = form.body.data
        posttags = db.session.query(categories).filter_by(post_id=id).all()
        for id in form.tag.data:
            if (post.id, id) not in posttags:
                post.tags.append(Tag.query.get(id))
        db.session.commit()
        return redirect(url_for('.view_post', id=post.id))
    form.body.data = post.body
    # already selected values
    form.tag.data = [tag_id for tag_id in db.session.query(categories).filter_by(post_id=post.id).all()]
    return render_template('home/edit_post.html', form=form, title='Edit Post')

Провели некоторые исследования.Итак, в двух словах, как я могу добавить атрибут selected к предварительно выбранным параметрам.

...