Как моделировать набор форм в модальной форме - django
я пытаюсь реализовать два набора форм в одном представлении, один из наборов форм должен быть всплывающей модальной формой: вот модели
class MobileCollection(models.Model):
mobile = models.ForeignKey(ModelCategory,on_delete=models.PROTECT,related_name='model_category')
qnt = models.IntegerField()
price = models.DecimalField(decimal_places=3,max_digits=20)
class Imei(models.Model):
mobile = models.ForeignKey(MobileCollection,on_delete=models.PROTECT)
imei = models.CharField(max_length=15,unique=True)
serial_no = models.CharField(max_length=7,unique=True,blank=True,null=True)
status = models.BooleanField(default=True)
def __str__(self):
return f'{self.mobile}-{self.imei}'
если количество = 10, то у нас есть 10 уникальных imei, для каждого мобильного элемента у нас есть несколько imei, im ei должны быть вставлены во всплывающем модальном окне
@login_required
def create_collection(request):
item_formset = mcollection(queryset=MobileCollection.objects.none())
imei_formset = imei_modelformset(queryset=Imei.objects.none())
if request.POST:
item_formset = mcollection(request.POST)
imei_formset = imei_modelformset(request.POST)
if imei_formset.is_valid() and item_formset.is_valid() and request.user.is_superuser:
for item in item_formset:
item_obj = child.save(commit=False)
item_obj.save()
for imei in imei_formset:
imei_obj = imei.save(commit=False)
imei_obj.mobile = item_obj
imei_obj.save()
return JsonResponse({'success':True})
else:
return JsonResponse({
'success':False,'error_child_msg':item_formset.errors,'error_imei_msg':imei_formset.errors})
context = {
'item_formset':item_formset,
'imei_formset':imei_formset
}
return render(request,'storage/collection.html',context)
но он сохраняет только последнюю запись элемента и не сохраняет imei, только его экземпляр (из элемента) будет сохранен
и вот мой набор форм
mcollection = modelformset_factory(
MobileCollection,form=MobileCollectionForm,fields=
['mobile','qnt','price'],can_delete=True,extra=1)
imei_modelformset = modelformset_factory(Imei,form=ImeiForm,fields=
['imei'],extra=1,can_delete=True)
и вот мой html и jquery
пожалуйста, если вы знаете что-нибудь об этом, дайте мне знать, и еще я не знаю, как использовать empty_formset для imei formsets, я буду очень признателен за вашу помощь... Спасибо заранее