首页 > 解决方案 > 数据未显示在数据库 django postgresql 中

问题描述

我必须在数据库中添加数据,但是在我点击注册按钮后,我在 python shell 中看到了我的数据。但是数据没有添加到数据库中。我正在使用 postgresql。这是我的注册代码

def register(request):

    if request.method == 'POST':
        username = request.POST['username']
        email = request.POST['email']
        password1 = request.POST['password1']
        password2 = request.POST['password2']

        user = User.objects.create_user(username=username,email=email,password=password1)
        user.save()
        return redirect('login.html')


    else:
        return render(request,'login.html')

我的 python shell 显示了这个->

[14/Jul/2020 03:31:58] "GET /register?csrfmiddlewaretoken=znOO3WMBIwzO1Q8DhqgsX4Xj8pGNrBkY0p27uYSefVyGi6QaNaMjdmsBD2R5jVbt&userame=hello&email=hello%40hello.com&password1=hello&password2=hello HTTP/1.1" 200 1173

我在 views.py 中的导入 ->

from django.shortcuts import render,redirect
from .models import profile
from django.contrib.auth.models import User,auth

标签: djangopostgresqldjango-forms

解决方案


这可能是因为您没有验证您的表单 def register(request):

if request.method == 'POST':
    username = request.POST['username']
    email = request.POST['email']
    if form is_valid()
      password1 = request.POST['password1']
      password2 = request.POST['password2']

    user = User.objects.create_user(username=username,email=email,password=password1)
    user.save()
    return redirect('login.html')

试试这个,你可以添加其他第二部分来显示错误


推荐阅读