Django - создавать много-много объектов inline аналогично inlinetabular для администратора
Я хочу позволить пользователям создавать inline/on-the-fly объект модели A, который имеет отношения "многие ко многим" с полем модели B, при этом создавая объект B... в общем, так же, как TabularInline позволяет делать это в админке.
хорошо, это поможет вам models.py
class A(models.Model):
fileds of A
class B(models.Model):
name= models.CharField(max_length=50,null=True,blank=True)
a= models.ForeignKey('Voyage',on_delete=models.CASCADE)
form.py добавьте это :
inlineForm = inlineformset_factory(A,B,
fields=('name'),
can_delete=False,extra=4,max_num=4
)
views.py :
from .form import inlineForm
def test(request,id):
obj=A.objects.get(id=id)
if request.method == 'POST':
form= inlineForm(request.POST,request.FILES,instance=obj)
if form.is_valid():
form.save()
return redirect(reverse('core:simple'))
form = inlineForm(instance=obj)
return render(request,'obj/inlineForm.html',{'formset':form})