Inline formset в Django
Inline formset - формы дочерних записей при редактировании родителя. Нужна связь ForeignKey. Пример: посты категории.
from django.forms import inlineformset_factory
from main.models import Category, Post
PostFormSet = inlineformset_factory(
Category,
Post,
fields=['title', 'slug'],
extra=2,
)
В view передают экземпляр родителя:
category = get_object_or_404(Category, id=id)
if request.method == 'POST':
formset = PostFormSet(
request.POST,
instance=category,
)
if formset.is_valid():
formset.save()
return redirect('category', id=id)
else:
formset = PostFormSet(instance=category)
Сделайте inline formset: у категории редактируются связанные посты (или у отдела - работники, если есть FK).