django: проверка наличия введенных данных в базе
У меня есть база данных с таблицей user где хранятся все пользователи. в views.py я написал переменные em в которой хранится введенные данные с html формы и ac1 которая берет данные с таблицы user с фильтром em. Нужно сделать проверку, есть ли введенный email в базе данных.
views.py
def main(request):
**em = request.POST['email']
ac1 = User.objects.filter(email_reg=em)
if em == ac1[0]:
logging.critical('my email')
logging.critical(ac1[0])
else:
logging.critical("Woops")**
if '[email protected]' in ac1:
return render(request, 'registration/regin.html')
else:
a = User(name_reg=request.POST['name'], surname_reg=request.POST['surname'], email_reg=request.POST['email'],
phone_number_reg=request.POST['phone_number'], password=request.POST['password'])
a.save()`введите сюда код`
return render(request, 'registration/main.html')
models.py
class User(models.Model):
class Meta1:
db_table = "User"
name_reg = models.CharField('user name', max_length=15)
surname_reg = models.CharField('user surname', max_length=30)
email_reg = models.CharField('email',max_length=50)
phone_number_reg = models.IntegerField('phone number', max_length=20)
password = models.CharField('password', max_length=10)
def __str__(self):
return self.email_reg
urls.py
app_name = 'registration'
urlpatterns = [
path('', views.ch,name='ch'),
path('login/',views.login,name='login'),
path('regin/',views.regin,name='regin'),
path('main/',views.main,name='main'),
]
regin.html
{% extends 'base.html' %}
{% block title %} login {% endblock %}
{% block content %}
<style>
form {
margin-top:30%;
}
input {
margin-top:10px;
margin-left:35%;
}
button {
margin-top:10px;
margin-left:35%;
}
</style>
<form action="{% url 'registration:main' %}" method="POST">
{% csrf_token %}
<input type="text" required placeholder="Your name" name="name"><br>
<input type="text" required placeholder="Your surname" name="surname"><br>
<input type="email" required placeholder="Enter your email" name="email"><br>
<input type="number" required placeholder="Enter your phone_number" name="phone_number"><br>
<input type="password" required placeholder="Enter your password" name="password"><br>
{% if check == False %}
<a style="margin-left:35%;">Goodbye</a><br>
{% else %}
<a style="margin-left:35%;">Goodbye</a><br>
{% endif %}
<button type="submit">take your profile</button>
</form>
{% endblock %}