Ich muss mehrere ModelField-Werte aus einem FormField extrahieren. wo soll ich das machen? in clean_<field>
Funktionen? mit cleaned_data
Mutation? Formular __init__
Funktion? in model.save
oder form.save
Funktion?Mehrere Modellfelder aus einem Formularfeld berechnen
Modell:
def normalize_name(name):
# some code
return name
class MyModel(models.Model):
name = models.CharField(max_length=250)
normalize_name = models.CharField(max_length=250, unique=True)
Form:
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
fields = ('name',) # or normalize_name? or both?
Ich bin mir nicht sicher, was Sie meinen "durch Extrahieren mehrerer ModelField-Wert von einem FormField". Wenn Sie aber "normalize_name" im Formular haben wollen, sollten Sie es in die Felder tuple too einfügen .... ('name', 'normalize_name',) ... –
Benutzer geben nur 'name' im HTML-Formular ein . aber im Modell brauchen sowohl 'name' als auch' normalisierte_name' Validierung. 'normalized_name' muss aus' name' berechnet und validiert werden. – seyed