Динамический набор форм, как их обновить?

У меня есть динамический набор форм, где я добавляю и удаляю форму с помощью кнопок. Каждый раз, когда я добавляю или удаляю форму, я увеличиваю или уменьшаю TOTAL_FORMS. Это работает, если я всегда удаляю последний добавленный элемент, но если я удаляю первый или любой другой элемент перед последним, Django не сохраняет форму. Я знаю, что проблема в том, что каждая форма принимает возрастающее число, и когда я удаляю форму, которая не является последней, эта последовательность нарушается. Мой вопрос в том, как это решить, можно ли сделать это изменение на бэкенде или только на фронтенде? И как это сделать? formset

Эту функцию я использую для клонирования формы и увеличения TOTAL_FORMS:

$('#add_more').click(function() {
    var form_idx = $('#id_form-TOTAL_FORMS').val();
    $('#addRow').append($('#empty_form').html().replace(/__prefix__/g, form_idx));
    $('#id_form-TOTAL_FORMS').val(parseInt(form_idx) + 1);
});

Эту функцию я использую для удаления формы:

function exclude(btn) {
 divId = $(btn).parent().parent();
 $(divId).remove();
 var form_idx = $('#id_form-TOTAL_FORMS').val();
 $('#id_form-TOTAL_FORMS').val(parseInt(form_idx) - 1);
 $('#id_form-INITIAL_FORMS').val(parseInt(form_idx) - 1);
}

Спасибо вам, ребята!

Вернуться на верх