This commit is contained in:
2025-03-07 09:27:06 +08:00
parent f10649e5f9
commit 7cb13333eb

View File

@@ -12,7 +12,7 @@ from .schemas import (
UserRegistrationSchema, UserRegistrationSchema,
UserLoginSchema, UserLoginSchema,
) )
from .models import RoleChoices, User from .models import Profile, RoleChoices, User
from .decorators import super_required from .decorators import super_required
router = Router() router = Router()
@@ -72,6 +72,7 @@ def batch_create(request, payload: BatchUsersIn):
# 批量创建账号 # 批量创建账号
prefix = "web" prefix = "web"
user_list = [] user_list = []
profile_list = []
usernames = [] usernames = []
for name in payload.names: for name in payload.names:
@@ -87,12 +88,14 @@ def batch_create(request, payload: BatchUsersIn):
if existing_users.exists(): if existing_users.exists():
raise HttpError(400, "有些用户已经存在,创建失败") raise HttpError(400, "有些用户已经存在,创建失败")
for user in user_list:
profile_list.append(Profile(user=user))
post_save.disconnect(sender=User, dispatch_uid="1") post_save.disconnect(sender=User, dispatch_uid="1")
User.objects.bulk_create(user_list) User.objects.bulk_create(user_list)
post_save.connect(sender=User, dispatch_uid="1") post_save.connect(sender=User, dispatch_uid="1")
for user in user_list: Profile.objects.bulk_create(profile_list)
post_save.send(sender=User, instance=user, created=True)
return {"message": "批量创建成功"} return {"message": "批量创建成功"}