新用户注册后在Django中进行电子邮件验证

时间:2020-10-22 11:35:24

标签: django django-views email-validation django-users django-email

我正在为我的网站创建一个用户注册页面。我想向用户注册时输入的邮件发送一封电子邮件验证邮件。我尝试了许多解决方案,但似乎没有任何效果。 我的代码:

views.py

def registerPage(request):
    form = CreateUserForm()
    if request.method == 'POST':
        form = CreateUserForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save()
            username = form.cleaned_data.get('username')
            messages.success(request, 'Account was created for ' + username)
            return redirect('login')
    context = {'form': form}
    return render(request, 'Home/register.html', context)

def loginPage(request):
    if request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('password')

        user = authenticate(request, username=username, password=password)

        if user is not None:
            login(request, user)
            return redirect('home')
        else:
            messages.info(request, 'Username OR password is incorrect')
            return redirect('login')
    context = {}
    return render(request, 'Home/login.html', context)

forms.py

class CreateUserForm(UserCreationForm):
    class Meta:
        model = User
        fields = ["username", "email", "password1", "password2"]

0 个答案:

没有答案