У меня есть набор форм, который я рендеринга по умолчанию {{ formset }}
. Страница отправляет себе сообщение после отправки формы.Как обновить набор форм новым pk id?
Проблема заключается в создании новых экземпляров, поля, содержащие идентификаторы, остаются пустыми, как <input id="id_form-0-id" name="form-0-id" type="hidden">
. Поэтому, если я повторно отправлю форму после ее возвращения, она завершит создание новых экземпляров вместо обновления вновь созданных экземпляров. Если я обновляю страницу, тогда поля содержат идентификаторы <input id="id_form-0-id" name="form-0-id" type="hidden" value="18">
.
Это моя функция контроллера:
def main_categories (request):
dict = {}
FormSet = modelformset_factory (MainCategory, formset = MainCategoryFormSet, fields = ['name'], extra = 1, can_delete = True)
if request.method == 'POST':
formset = FormSet (request.POST)
if formset.is_valid():
with transaction.atomic():
formset.save()
else:
formset = FormSet()
dict ['formset'] = formset
return render (request, 'equipment/admin/main_categories.html', dict)
Не очищается для меня, но если вы обновляете больше кода (модели, формы, URL-адреса, ...) или лучше ссылку на проект, я постараюсь вам помочь – madzohan