1

Ich möchte eine Umfrage mit Django und Ajax erstellen. Auf der Umfrageerstellungsseite kann der Benutzer für jede Umfrage mehrere Optionen hinzufügen. Der Benutzer kann 4 Optionen hinzufügen oder 10 Optionen oder eine andere Anzahl von Optionen hinzufügen. Alle Optionen sind Zeichenfolge und ich möchte sie durch forms.CharField() validieren. Also habe ich unter Form für die Validierung der sie erstellt.Wie validiere ich ein Feld, das mehrmals im Django gesendet wurde?

class SurveyOptionForm(forms.Form): 
    option = forms.CharField(max_length=50) 

Wie kann ich mehr als eine Option über dieses Formular validieren? oder wenn es irgendeinen besseren Weg gibt, was ist das?

+0

Verwenden Sie Foreignk-Schlüssel für das? –

+0

Ja, ich speichere Umfragen in einer Tabelle und Optionen in einer anderen Tabelle, das erste Feld der Optionstabelle ist 'ForeignKey (Umfragen)'. – msln

Antwort

0

Gut für, dass lesen Sie mehr über formset here dann können Sie Modelformset verwenden, um Ihre Option in der Datenbank read more here zu speichern. Dann können Sie die Option zum Vermessen hinzufügen:

# don't save to the database 
>>> instances = formset.save(commit=False) 
>>> for instance in instances: 
...  # do something with instance 
...  option = instance.save(commit=False) 
...  option.survey = your_suervey_object 
...  option.save() 

Sie können angeben, wie viele Formulare übergeben werden. Sie können Javascript verwenden, um eine Schaltfläche hinzuzufügen, die eine andere Eingabe hinzufügen oder anzeigen

Verwandte Themen