i've created a page which has a formset, i want to check all forms if they have error, then call save method, but create()
automatically call save method! is there away to prevent it please ?
here is my views.py
def addNewGuestPopup(request):
if request.method == "POST":
form_no = int(request.POST.get('form_no'))
removed_form = request.POST.get('removed_form').split(",")
error_form_exits = []
new_guests = []
for i in range(form_no):
if str(i) not in removed_form:
full_name = request.POST.get('fullname-'+str(i))
dob = request.POST.get('dob-'+str(i)).split("-")
try:
visitor = Vistor.objects.get(full_name=full_name, dob=datetime.datetime(int(dob[0]), int(dob[1]), int(dob[2])))
error_form_exits.append(i)
except Vistor.MultipleObjectsReturned:
pass
except Vistor.DoesNotExist:
visitor = Vistor.objects.create(full_name=full_name,
dob=datetime.datetime(int(dob[0]), int(dob[1]), int(dob[2])),
admin=request.user)
new_guests.append(visitor)
# return JsonResponse({'error_form':error_form})
print(len(error_form_exits))
return JsonResponse({'data':list(Vistor.objects.values_list('full_name', flat=True)),
'error_form':error_form_exits}, safe=True)
return render(request, 'main/forms.html')
i dont want to use django formset is there a way to prevent create from save until all forms been checked please? note : dob and full_name are unique together thank you ..