Wie schreiben Sie eine save-Methode für Formulare in django?
Habe ich zwei Modelle in Django: Benutzer (vordefiniert von Django) und UserProfile. Die beiden sind verbunden über Fremdschlüssel. Ich erstelle ein Formular, das ermöglicht es, den Kunden zu Bearbeiten Sie Ihre Benutzer-Profil. Als solche, diese form wird auf die beiden genannten Modelle.
Wie erstelle ich eine save () - Methode für das Formular? Was sind die Schritte/Voraussetzungen für die Vollendung des "speichern" - Funktion?
Hier ist, was ich habe, so weit in forms.py:
class UserChangeForm(forms.Form):
#fields corresponding to User Model
email = forms.EmailField(required=True)
first_name = forms.CharField(max_length = 30)
last_name = forms.CharField(max_length = 30)
password1 = forms.CharField(max_length=30, widget=forms.PasswordInput)
password2 = forms.CharField(max_length=30, widget=forms.PasswordInput)
#fields corresponding to UserProfile Model
gender = forms.CharField(max_length = 30, widget=forms.Select)
year = forms.CharField(max_length = 30, widget=forms.Select)
location = forms.CharField(max_length = 30, widget=forms.Select)
class Meta:
fields = ("username", "email", "password1", "password2", "location", "gender", "year", "first_name", "last_name")
def save(self):
data = self.cleaned_data
# What to do next over here?
Ist das ein guter start oder jemand empfehlen würde, ändern diese, bevor wir zu schreiben beginnen, wird die save () - Funktion?
- Warum nicht
ModelForm
s? - Kann ich eine ModelForm, basierend auf den beiden Modellen? Wenn ja, wie würde ich tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
dies könnte Ihnen helfen,
Den
prefix
argument (auch aufModelForm
durch erbschaft) an den Konstruktor der Sie mehrere Formulare in einem einzigen<form>
tag und zwischen Ihnen zu unterscheiden, die auf Unterwerfung....