После регистрации пользователя через форму Django, я не могу увидеть этого пользователя в базе данных.Я использую базу данных Django по умолчанию Sqlite3, и я получаю к ней доступ через администратора Django.Когда я пытаюсь перерегистрировать уже существующего пользователя, он говорит: «Пользователь с таким именем уже существует, это означает, что записи сохраняются, но я не могу их увидеть.
Мой код:
views.py
from django.shortcuts import render
from volunteer.forms import UserForm
def register(request):
registered = False
if request.method =="POST" :
user_form = UserForm(data=request.POST)
if user_form.is_valid():
user = user_form.save()
user.save()
registered = True
else:
print(user_form.errors)
else:
user_form = UserForm()
return render(request, 'volunteer/volunteer.html',
{'user_form':user_form,
'registered':registered})
models.py
from django.db import models
from django.contrib.auth.models import User
class UserProfileInfo(models.Model):
user=models.OneToOneField(User)
def __str__(self):
return self.user.first_name
return self.user.last_name
return self.user.email
forms.py
from django import forms
from django.contrib.auth.models import User
from volunteer.models import UserProfileInfo
class UserForm(forms.ModelForm):
class Meta():
model = User
fields = ('email','first_name','last_name')
urls.py
from django.conf.urls import url
from . import views
app_name = 'volunteer'
urlpatterns = [
url(r'^', views.register, name='register'),
]
admin.py
from django.contrib import admin
from volunteer.models import UserProfileInfo
# Register your models here.
admin.site.register(UserProfileInfo)
волонтер.html (шаблон, имеющий форму)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content = "width=device-width, initial-scale=1.0">
</head>
<body>
<div class="jumbotron">
{% if registered %}
<h1>Thanks!</h1>
{% else %}
<h1>Register</h1>
<form method="post">
{% csrf_token %}
{{ user_form.as_p }}
<input type="submit" name="" value="Register">
{% endif %}
</div>
</form>
</body>
</html>
ПРИМЕЧАНИЕ. Я не включил библиотеки начальной загрузки, jquery и ajax вприведенный выше HTML-код из-за проблем с форматированием. Я думаю, что они не имеют ничего общего с этой проблемой.
Я думаю, что проблема связана с моим views.py, models.py или forms.py или добровольцем.htmlили что-то еще. Пожалуйста, помогите мне. Я использую Django 1.9.
Заранее спасибо!