Advertisement
mhkmcp

Untitled

Jun 24th, 2018
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.57 KB | None | 0 0
  1. //Model
  2. class ProfileInfo(models.Model):
  3. user = models.OneToOneField(User, on_delete=True, unique=True)
  4. street = models.CharField(max_length=100)
  5. zip_code = models.CharField(max_length=15)
  6. city = models.CharField(max_length=15, null=True)
  7. #user_type = models.ForeignKey('User_Type', on_delete=False, default='client')
  8. is_subscribed = models.BooleanField(default=False)
  9. is_active = models.BooleanField(default=True)
  10. #wishlist = models.ForeignKey('Wishlist', on_delete=False, default='null')
  11. balance = models.DecimalField(max_digits=6, decimal_places=2, default=0.0)
  12.  
  13. def __str__(self):
  14. return self.user.username
  15.  
  16.  
  17. //Form
  18.  
  19. class UserForm(forms.ModelForm):
  20.  
  21. password = forms.CharField(widget=forms.PasswordInput())
  22. confirm_password = forms.CharField(widget=forms.PasswordInput())
  23.  
  24. class Meta():
  25. model = User
  26. fields = ('first_name','last_name','username','email','password')
  27.  
  28. class ProfileInfoForm(forms.ModelForm):
  29. class Meta():
  30. model = ProfileInfo
  31. exclude = ('User', 'is_active','is_subscribed','balance','user', 'wishlist')
  32.  
  33. //View
  34.  
  35. def register(request):
  36. registered = False
  37. if request.method == "POST":
  38. user_form = UserForm(data=request.POST)
  39. profile_form = ProfileInfoForm(data=request.POST)
  40.  
  41. if user_form.is_valid() and profile_form.is_valid():
  42. print(user_form.is_valid())
  43. print(profile_form.is_valid())
  44. first_name = user_form.cleaned_data['first_name']
  45. last_name = user_form.cleaned_data['last_name']
  46. username = user_form.cleaned_data['username']
  47. password = user_form.cleaned_data['password']
  48.  
  49. street = profile_form.cleaned_data['street']
  50. zip_code = profile_form.cleaned_data['zip_code']
  51. city = profile_form.cleaned_data['city']
  52.  
  53. #user = profile_form.auto_id
  54.  
  55. user = user_form.save()
  56. profileInfo = profile_form.save()
  57. #profileInfo.user = None
  58. print(username + " " + profileInfo.user_id)
  59.  
  60. user.set_password(user.password)
  61. user.save()
  62. profileInfo.save()
  63.  
  64. registered = True
  65.  
  66. else:
  67. print(user_form.errors, profile_form)
  68.  
  69. else:
  70. user_form = UserForm()
  71. profile_form = ProfileInfoForm()
  72.  
  73. return render(request, 'product/user_register.html',
  74. {'user_form': user_form,
  75. 'profile_form': profile_form,
  76. 'registered': registered})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement