Получаю ошибку 500 Internal Server Error в ajax, django POST форме
Я делаю форму для добавления почт пользователей в базу данных чтобы в дальнейшем делать рассылку по ним.
Я использую AJAX в форме чтобы страница не обновлялась при submit'е
Вот мой html код:
<div class="col-lg-6">
<form action="" method="post" id = "malistform">
{% csrf_token %}
<input type="email" id = "mailist" name = "mailist" required placeholder = "Впишите свою почту">
<input type = "submit" value = "Подписатсья">
</form>
</div>
<script type = "text/javascript">
$(document).on("submit", "#malistform", (e)=>{
e.preventDefault();
$.ajax({
type: "POST",
url:'{% url 'core:mailist' %}',
data:{
mail:$('#mailist').val(),
csrfmiddlewaretoken:$('input[name=csrfmiddlewaretoken]').val(),
},
success: function(){
}
});
});
</script>
Мой views.py, отвечающий за сохранение почты в БД:
def mailist(request):
response_data = {}
if request.method == 'POST':
mail = request.POST.get('mailist')
response_data['mail'] = mail
f = Email(mail = mail)
f.save()
return JsonResponse(response_data)
urls.py:
urlpatterns = [
path("", views.index, name = "index"),
path("blog", views.blog, name = "blog"),
path('email', views.email, name = 'email'),
path("blog-single", views.blogSingle, name = "blogSingle"),
path("portfolio-details", views.portfolioDetails, name = "portfolioDetails"),
path('add-form', views.addForm, name = "form"),
path('success', views.success, name = 'success'),
path('mailist', views.mailist, name = 'mailist')
]
Модель почты models.py:
class Email(models.Model):
mail = models.CharField(max_length=64)
def __str__(self):
return self.mail
ошибка с терминала:
return Database.Cursor.execute(self, query, params) django.db.utils.IntegrityError: NOT NULL constraint failed: core_email.mail