Я новичок в python Django. Я застрял в форме регистрации. Я создал форму, используя форму регистрации, но когда я отправляю форму, она не регистрирует пользователя или не получает никакой ошибки. Когда я кодирую это в первый раз, это работает отлично, но когда я открываю следующий день, чтобы продвинуться в моем обучении, но это работает как в прошлый раз.
model.py
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class AppUser(User):
pass
form.py
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm, get_user_model
from stock.models import AppUser
class LoginForm(forms.Form):
username = forms.CharField(widget=forms.TextInput)
password = forms.CharField(widget=forms.PasswordInput)
class SignUpForm(UserCreationForm):
username = forms.CharField(max_length=30)
password1 = forms.CharField(widget=forms.PasswordInput)
password2 = forms.EmailField(widget=forms.PasswordInput)
class Meta:
model = AppUser
fields = ('username', 'password1', 'password2' )
htmlTemplate
{% extends 'base.html' %}
{% block content %}
<div>
<h2>Sign Up</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn btn-primary" >Signup</button>
</form>
</div>
{% endblock %}
views.py
class SignupView(TemplateView):
template_name = 'stock/signup.html'
def get(self, request):
form = SignUpForm()
args = {'form':form}
return render(request, self.template_name, args)
def post(self, request):
form = SignUpForm(request.POST)
if form.is_valid():
form.save()
username = form.cleaned_data.get('username')
raw_password = form.cleaned_data.get('password1')
user = authenticate(username=username, password=raw_password)
login(request, user)
return redirect('home')
else:
form = SignUpForm()
return render(request, self.template_name, {'form': form, 'error':'Username/Password already exist or password should be match' })