Wiem, że is_valid()
na formularzu ograniczonym sprawdza, czy wprowadzono wszystkie wymagane dane. Nie tego chcę. Chcę sprawdzić, czy w formularzu jest wypełnione dowolne pole.Django: Jak sprawdzić, czy użytkownik pozostawił wszystkie pola puste (lub wartości początkowe)?
Wszelkie pomysły?
Opracowywanie:
chcę dać użytkownikowi wybór nie wypełnienie formularza w ogóle. Jednakże, jeśli próbują go wypełnić (tj. Zmienili wartość w polu z jego początkowej wartości --- zwykle pustej wartości), chcę ją zweryfikować.
Widok byłoby coś takiego:
def get_opinion(request):
if request.method == 'POST':
f = OpinionForm(request.POST)
if form_is_blank(f):
return HttpResponseRedirect(reverse('thank_you_anyway'))
elif f.is_valid():
#Process here
return HttpResponseRedirect(reverse('thanks_for_participating'))
else:
initial = {'weekday': date.today().strftime('%A')}
f = OpinionForm(initial=initial)
return render_to_response(
'get_opinion.html',
{'form': f,},
RequestContext(request)
)
Co chcę jest form_is_blank()
część.
Powinieneś umieścić więcej wyraźnych przypadków użycia dla tego. Jeśli zależy Ci tylko na wypełnieniu co najmniej jednego pola, brzmi to jak coś, co powinno się stać po stronie klienta z niektórymi javascriptami. –
@Matt: Dzięki za sugestię. Opracowałem z pewnym kodem. –