onezee

Untitled

May 18th, 2020
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.26 KB | None | 0 0
  1. """ 1 """
  2. from django.db import models
  3.  
  4. class User_Panel(models.Model):
  5. first_name = models.CharField("Имя", max_length=50)
  6. last_name = models.CharField("Фамилия", max_length=100, null=True, blank=True)
  7. email = models.CharField("e-mail", max_length=255)
  8. photo = models.ImageField("Аватар", upload_to='users/', blank=True, default='static/img/default.jpg')
  9. staff = models.BooleanField("Персонал", default=False)
  10. individual = models.BooleanField("Частное лицо", default=True)
  11. panel_id = models.IntegerField(blank=True)
  12. objects = models.Manager()
  13.  
  14. class Meta:
  15. verbose_name = "Пользователь"
  16. verbose_name_plural = "Пользователи"
  17.  
  18. """ 2 """
  19. def register(request):
  20. if request.method == "POST":
  21. first_name = request.POST['first_name']
  22. last_name = request.POST['last_name']
  23. username = request.POST['username']
  24. email = request.POST['email']
  25. password = request.POST['password']
  26. password2 = request.POST['password2']
  27.  
  28. if password == password2:
  29. if User.objects.filter(username=username).exists():
  30. messages.error(request, 'Такой логин уже существует')
  31. return redirect('register')
  32. else:
  33. if User.objects.filter(email=email).exists():
  34. messages.error(request, 'Такая почта уже используется')
  35. return redirect('register')
  36. else:
  37. user = User.objects.create_user(username=username, password=password, email=email,
  38. first_name=first_name, last_name=last_name)
  39. dashboard = User_Panel(panel_id=user.id, email=email,
  40. first_name=first_name, last_name=last_name)
  41. # Авторизация и перенаправление на страницу входа
  42. user.save()
  43. dashboard.save()
  44. messages.success(request, 'Регистрация прошла успешно, теперь вы можете авторизоваться')
  45. return redirect('login')
  46.  
  47. # Авторизация сразу после регистрации
  48. # auth.login(request, user)
  49. # messages.success(request, 'Вы теперь авторизованы')
  50. # return redirect('index')
  51. else:
  52. messages.error(request, 'Пароли не совпадают')
  53. return redirect('register')
  54. else:
  55. return render(request, 'accounts/register.html')
  56.  
  57. """ 3 """
  58. def dashboard(request):
  59. if request.method == 'POST':
  60. panel_id = request.POST['user_id']
  61. dash = User_Panel.objects.get(panel_id=panel_id)
  62. user = User.objects.get(id=panel_id)
  63. first_name = request.POST['first_name']
  64. last_name = request.POST['last_name']
  65. email = request.POST['email']
  66. individual = request.POST['individual']
  67. try:
  68. photo = request.FILES['photo']
  69. dash.photo = photo
  70. except:
  71. pass
  72. dash.first_name = first_name
  73. user.first_name = first_name
  74. dash.last_name = last_name
  75. user.last_name = last_name
  76. if User.objects.filter(email=email).exists():
  77. if user.email != dash.email:
  78. messages.error(request, 'Такая почта уже используется')
  79. return redirect('dashboard')
  80. else:
  81. pass
  82. else:
  83. dash.email = email
  84. user.email = email
  85. dash.individual = individual
  86.  
  87. dash.save()
  88. user.save()
  89.  
  90. user_detail = User_Panel.objects.filter(panel_id=request.user.id)
  91. context = {
  92. 'users': user_detail
  93. }
  94. return render(request, 'accounts/dashboard.html', context)
  95.  
  96. """ 4 """
  97. DATABASES = {
  98. 'default': {
  99. 'ENGINE': 'django.db.backends.postgresql',
  100. 'NAME': 'cprj',
  101. 'USER': 'postgres',
  102. 'PASSWORD': 'jkasdqaz',
  103. 'HOST': 'localhost'
  104. }
  105. }
Add Comment
Please, Sign In to add comment