Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Model
- class ProfileInfo(models.Model):
- user = models.OneToOneField(User, on_delete=True, unique=True)
- street = models.CharField(max_length=100)
- zip_code = models.CharField(max_length=15)
- city = models.CharField(max_length=15, null=True)
- #user_type = models.ForeignKey('User_Type', on_delete=False, default='client')
- is_subscribed = models.BooleanField(default=False)
- is_active = models.BooleanField(default=True)
- #wishlist = models.ForeignKey('Wishlist', on_delete=False, default='null')
- balance = models.DecimalField(max_digits=6, decimal_places=2, default=0.0)
- def __str__(self):
- return self.user.username
- //Form
- class UserForm(forms.ModelForm):
- password = forms.CharField(widget=forms.PasswordInput())
- confirm_password = forms.CharField(widget=forms.PasswordInput())
- class Meta():
- model = User
- fields = ('first_name','last_name','username','email','password')
- class ProfileInfoForm(forms.ModelForm):
- class Meta():
- model = ProfileInfo
- exclude = ('User', 'is_active','is_subscribed','balance','user', 'wishlist')
- //View
- def register(request):
- registered = False
- if request.method == "POST":
- user_form = UserForm(data=request.POST)
- profile_form = ProfileInfoForm(data=request.POST)
- if user_form.is_valid() and profile_form.is_valid():
- print(user_form.is_valid())
- print(profile_form.is_valid())
- first_name = user_form.cleaned_data['first_name']
- last_name = user_form.cleaned_data['last_name']
- username = user_form.cleaned_data['username']
- password = user_form.cleaned_data['password']
- street = profile_form.cleaned_data['street']
- zip_code = profile_form.cleaned_data['zip_code']
- city = profile_form.cleaned_data['city']
- #user = profile_form.auto_id
- user = user_form.save()
- profileInfo = profile_form.save()
- #profileInfo.user = None
- print(username + " " + profileInfo.user_id)
- user.set_password(user.password)
- user.save()
- profileInfo.save()
- registered = True
- else:
- print(user_form.errors, profile_form)
- else:
- user_form = UserForm()
- profile_form = ProfileInfoForm()
- return render(request, 'product/user_register.html',
- {'user_form': user_form,
- 'profile_form': profile_form,
- 'registered': registered})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement