Это примерно то, что я пытаюсь сделать:
def post(request):
VehicleFormSet = formset_factory(StaffVehicleForm)
if request.method == 'POST':
vehicle_formset = VehicleFormSet(request.POST)
if 'add_vehicle' in request.POST:
if vehicle_formset.is_valid():
form_count = vehicle_formset.total_form_count()
vehicle_formset.forms.append(vehicle_formset._construct_form(form_count))
В принципе, если пользователь нажимает кнопку "Добавить", и их запись действительна, я хочу добавить еще одну пустую форму в набор форм и скрыть предыдущую.
Проблема с приведенным выше кодом заключается в том, что я не могу понять, как увеличить total_form_count()
. Теперь у меня есть это, он будет работать один раз, а затем, если вы снова нажмете его, ничего не произойдет, по-видимому, потому что form_count
- то же самое. Мне также не нравится называть _construct_form
и полагаться на внутренности.