Note that there are some explanatory texts on larger screens.

plurals
  1. POCreating an Add user form in Django
    primarykey
    data
    text
    <p>I want to create a <strong><em>SINGLE</em></strong> form which gives the ability to the admin to create a new user with extended profile. Please note that, I don't want to use admin and registration apps. I have extended the user with the UserProfile model. I have read all the documents related to extending user profile. But, I really don't know how to save these information. I coded the following django form for this issue:</p> <pre><code>class CreateUserForm(forms.Form): username = forms.CharField(max_length=30) first_name = forms.CharField() last_name = forms.CharField() password1=forms.CharField(max_length=30,widget=forms.PasswordInput()) #render_value=False password2=forms.CharField(max_length=30,widget=forms.PasswordInput()) email=forms.EmailField(required=False) title = forms.ChoiceField(choices=TITLE_CHOICES) def clean_username(self): # check if username dos not exist before try: User.objects.get(username=self.cleaned_data['username']) #get user from user model except User.DoesNotExist : return self.cleaned_data['username'] raise forms.ValidationError("this user exist already") def clean(self): # check if password 1 and password2 match each other if 'password1' in self.cleaned_data and 'password2' in self.cleaned_data:#check if both pass first validation if self.cleaned_data['password1'] != self.cleaned_data['password2']: # check if they match each other raise forms.ValidationError("passwords dont match each other") return self.cleaned_data def save(self): # create new user new_user=User.objects.create_user(username=self.cleaned_data['username'], first_name=self.cleaned_data['first_name'], last_name=self.cleaned_data['last_name'], password=self.cleaned_data['password1'], email=self.cleaned_data['email'], ) return new_user </code></pre> <p>Is it OK? however it gives me an error in first_name and last_name. Says django doesn't expect first_name and last_name in save() method.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload