user_groups: Pass list of user ids to bulk_add_members_to_user_group.

We pass list of user ids instead of user profile objects to
bulk_add_members_to_user_group. We still need to call user_id_to_users
in the views function instead of directly passing the ids to
bulk_add_members_to_user_group to make sure we check whether all
ids are valid or not.
This commit is contained in:
Sahil Batra
2022-03-12 14:05:59 +05:30
committed by Tim Abbott
parent b48b98f1d9
commit 303fca2ce7
3 changed files with 7 additions and 7 deletions

View File

@@ -8550,15 +8550,14 @@ def do_send_user_group_members_update_event(
@transaction.atomic(savepoint=False)
def bulk_add_members_to_user_group(user_group: UserGroup, user_profiles: List[UserProfile]) -> None:
def bulk_add_members_to_user_group(user_group: UserGroup, user_profile_ids: List[int]) -> None:
memberships = [
UserGroupMembership(user_group_id=user_group.id, user_profile=user_profile)
for user_profile in user_profiles
UserGroupMembership(user_group_id=user_group.id, user_profile_id=user_id)
for user_id in user_profile_ids
]
UserGroupMembership.objects.bulk_create(memberships)
user_ids = [up.id for up in user_profiles]
do_send_user_group_members_update_event("add_members", user_group, user_ids)
do_send_user_group_members_update_event("add_members", user_group, user_profile_ids)
@transaction.atomic(savepoint=False)

View File

@@ -1161,7 +1161,7 @@ class NormalActionsTest(BaseAction):
# Test add members
hamlet = self.example_user("hamlet")
events = self.verify_action(lambda: bulk_add_members_to_user_group(backend, [hamlet]))
events = self.verify_action(lambda: bulk_add_members_to_user_group(backend, [hamlet.id]))
check_user_group_add_members("events[0]", events[0])
# Test remove members

View File

@@ -126,7 +126,8 @@ def add_members_to_group_backend(
)
)
bulk_add_members_to_user_group(user_group, user_profiles)
user_profile_ids = [user.id for user in user_profiles]
bulk_add_members_to_user_group(user_group, user_profile_ids)
return json_success(request)