Hallo,
die UserCreationForm hat ursprünglich nur die Felder (benutzername,passwort und passwort bestätigen).
Ich möchte gerne eine Registrierung haben, wo man auch noch eine Emailadresse angeben muss.
Laut der Documentation kann man irgendwie so in der Art:
>>> class UserCreationFormExtended(ModelForm):
... email = model.EmailField()
...
... class Meta:
... model = UserCreationForm()
Felder hinzufügen, klappt jedoch bei mir leider nicht.
ich habs auch schon so versucht:
model:
class UserCreationFormExtended(ModelForm):
class Meta:
model = User
fields = ('email')
def registration(request):
if request.method == 'GET':
registerForm1 = UserCreationForm()
..
registerForm5 = UserCreationFormExtended()
return render_to_response('registration/registration.html',{ 'registerForm1' : registerForm1, 'registerForm5' : registerForm5 })
if request.method == 'POST':
registerResponse1 = UserCreationForm(request.POST)
registerResponse5 = UserCreationFormExtended(request.POST)
if registerResponse1.is_valid() and registerResponse5.is_valid():
userObject = registerResponse1.save(commit = False)
userObject.email = registerResponse5 -> wie kann man auf die Value vom email feld zugreifen?
userObject.save()
hoffe, ich hab mich gut genug ausgedrückt.
Schonmal danke für eure Hilfe.
[Django] UserCreationForm um Emailfeld erweitern
-
- User
- Beiträge: 996
- Registriert: Mittwoch 9. Januar 2008, 13:48
Hi,
Code bitte in Codeblöcken pasten.
Für dein Problem siehe http://docs.djangoproject.com/en/dev/to ... orms-index.
Du könntest zum Beispiel das Original-Feld erben:
Code bitte in Codeblöcken pasten.
Für dein Problem siehe http://docs.djangoproject.com/en/dev/to ... orms-index.
Du könntest zum Beispiel das Original-Feld erben:
Code: Alles auswählen
class MyUserCreationForm(UserCreationForm):
email = model.EmailField()
danke für den Tipp,
habs gerade mal so versucht:
Leider werden im Browser wieder nur die Standartfelder angezeigt
(Benutzername:
Passwort:
Passwort bestätigen: )
habs gerade mal so versucht:
Code: Alles auswählen
class UserCreationFormExtended(UserCreationForm):
email = models.EmailField()
(Benutzername:
Passwort:
Passwort bestätigen: )
-
- User
- Beiträge: 996
- Registriert: Mittwoch 9. Januar 2008, 13:48
Gib mal den Code für das Register-View :)
ok 
ich habs jetzt zwar schon anders gelöst (unprofessionell)
aber wäre cool, wenn ich noch andere Möglichkeiten erfahre.
Ich hatte es in etwa so probiert
model:
view:

ich habs jetzt zwar schon anders gelöst (unprofessionell)
aber wäre cool, wenn ich noch andere Möglichkeiten erfahre.
Ich hatte es in etwa so probiert
model:
Code: Alles auswählen
class UserCreationFormExtended(UserCreationForm):
email = models.EmailField()
view:
Code: Alles auswählen
def registration(request):
if request.method == 'GET':
registerForm1 = UserCreationFormExtended()
return render_to_response('registration/registration.html',{ 'registerForm1' : registerForm1})
if request.method == 'POST':
registerResponse1 = UserCreationFormExtended(request.POST)
if registerResponse1.is_valid():
userObject = registerResponse1.save(commit = False)
return render_to_response('registration/registrationConfirmation.html'........
else:
return render_to_response('registration/registration.html',{ 'registerForm1' : registerResponse1})