From 32cae30158fb65a594f4153d2beb968065d6f852 Mon Sep 17 00:00:00 2001 From: ismail Date: Sun, 1 Jun 2025 17:49:49 +0300 Subject: [PATCH] add the IntegrityError chech to user_create --- inventory/views.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/inventory/views.py b/inventory/views.py index 872df45e..efe9b285 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -16,7 +16,7 @@ from urllib.parse import urlparse, urlunparse ##################################################################### from inventory.models import Status as LeadStatus - +from django.db import IntegrityError from background_task.models import Task from django.db.models.deletion import RestrictedError from django.http.response import StreamingHttpResponse @@ -2691,12 +2691,18 @@ class UserCreateView( email = form.cleaned_data["email"] password = "Tenhal@123" - - user = User.objects.create_user( - username=email, email=email, password=password - ) - user.is_staff = True - user.save() + try: + user = User.objects.create_user( + username=email, email=email, password=password + ) + user.is_staff = True + user.save() + except IntegrityError as e: + messages.error( + self.request, + _("A user with this email already exists. Please use a different email."), + ) + return redirect("user_create") staff_member = StaffMember.objects.create(user=user) for service in form.cleaned_data["service_offered"]: staff_member.services_offered.add(service)