Guest User

Untitled

a guest
Sep 24th, 2018
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. class User(AbstractBaseUser, PermissionsMixin):
  2. email = models.EmailField(_('email address'), unique=True)
  3. is_active = models.BooleanField(_('active'), default=False)
  4. token_num = models.IntegerField(_('token count'), default=0)
  5. money_num = models.IntegerField(_('money count'), default=0)
  6.  
  7. objects = UserManager()
  8. USERNAME_FIELD = 'email'
  9. REQUIRED_FIELDS = []
  10.  
  11. class Meta:
  12. verbose_name = _('user')
  13. verbose_name_plural = _('users')
  14.  
  15. def login(request):
  16. if request.method == "POST":
  17. form = LoginForm(request.POST)
  18. email = request.POST.get('email')
  19. password = request.POST.get('password')
  20. user = authenticate(username=email, password=password)
  21. if user is not None and user.is_active:
  22. login(request, user)
  23. return HttpResponseRedirect("/main/")
  24. else:
  25. form = LoginForm()
  26. return render(request, 'registration/login.html', {'form': form})
  27.  
  28. class LoginForm(forms.Form):
  29. user_email = forms.EmailField(max_length=255)
  30. password = forms.CharField(max_length=255)
  31. class Meta:
  32. model = User
  33. fields = ('email', 'password')
  34.  
  35. {% extends 'base.html' %}
  36.  
  37. {% block title %}Login{% endblock %}
  38. {% block content %}
  39. <h2>Login</h2>
  40. <form method="post">
  41. {% csrf_token %}
  42. {% for field in form %}
  43. <p>
  44. {{ field.label_tag }}<br>
  45. {{ field }}
  46. {% if field.help_text %}
  47. <small style="display: none">{{ field.help_text }}</small>
  48. {% endif %}
  49. {% for error in field.errors %}
  50. <p style="color:red">{{ error }}</p>
  51. {% endfor %}
  52. </p>
  53. {% endfor %}
  54. <button type="submit">Login</button>
  55. </form>
  56. {% endblock %}
  57.  
  58. urlpatterns = [
  59. url(r'^log/$', views.login)
  60. ]
Add Comment
Please, Sign In to add comment