Python 3.x 终端上的表单数据显示&;不';t保存在postgres数据库django中
在我学习django的事业中,我决定从小项目开始,我正在做一个简单的注册页面。我在主页(index.html)上有我的表单。我有一个view.py页面,我将表单中的所有数据传递给我的postgres db。我意识到数据并没有保存在数据库中,而是所有注册数据都显示在终端和url栏中。这是我的密码 表单(index.html) settings.py上的数据库设置 数据库={ “默认值”:{Python 3.x 终端上的表单数据显示&;不';t保存在postgres数据库django中,python-3.x,django,Python 3.x,Django,在我学习django的事业中,我决定从小项目开始,我正在做一个简单的注册页面。我在主页(index.html)上有我的表单。我有一个view.py页面,我将表单中的所有数据传递给我的postgres db。我意识到数据并没有保存在数据库中,而是所有注册数据都显示在终端和url栏中。这是我的密码 表单(index.html) settings.py上的数据库设置 数据库={ “默认值”:{ 'ENGINE': 'django.db.backends.postgresql_psycopg2',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'bookconf',
'USER': 'postgres',
'PASSWORD': 'olumide',
'HOST': 'localhost',
'PORT': '5432',
}
}
我怀疑数据被收集了,它们会跳到执行这个返回呈现(请求'index.html')
,因为在我输入submit之后,主页(index.html)会被重新加载
此外,我确定安装了psycopg2。数据库中没有保存任何数据,也没有错误消息,除了下面的消息
终端上的消息
[03/Sep/2020 04:22:18]“GET/HTTP/1.1”200 25753
[2020年9月3日04:22:37]“获取/?csrfmiddlewaretoken=ltmizl5z9ygyelckunmbkmt2ms7rmr90cyxlhpvufia6hpaf80phfpjbrp6ruvpj&fName=Ken&lName=Cole&email=kcole%40mail.com&uName=k.Cole&Password1=1122&Password2=1122 HTTP/1.1”200 25753
关于如何修复此问题的想法将不胜感激。谢谢请同时从
settings.py
文件中显示您的数据库设置,以及您获得的控制台输出。另外,还有一件事,您不必执行user.save()
在调用User.objects.create_User
后,它会自动为您保存数据。感谢@Noopur Phalak的响应,我刚刚用settings.py中的db settings更新了帖子。控制台输出也没有显示任何错误。您在终端上的消息说您触发了GET请求,但表单仍然存在html文件具有POST方法…请检查您是否实际向服务器发出GET请求或POST请求。。。
if request.method == 'POST':
first_name = request.POST['fName']
last_name = request.POST['lName']
username = request.POST['uName']
password1 = request.POST['password1']
password2 = request.POST['password2']
email = request.POST['email']
user = User.objects.create_user(username=username, password=password1, email=email,
first_name=first_name, last_name=last_name)
user.save()
print('user created')
return redirect('/')
else:
return render(request, 'index.html')
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'bookconf',
'USER': 'postgres',
'PASSWORD': 'olumide',
'HOST': 'localhost',
'PORT': '5432',
}