Use prefetch to improve query efficiency () ()

- Significantly improves performance of users.models.update_group_roles() function
- Ref: https://github.com/inventree/InvenTree/pull/5612

(cherry picked from commit 200bc5bd3d)

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
This commit is contained in:
github-actions[bot] 2023-09-25 13:35:13 +10:00 committed by GitHub
parent 978e08f3a3
commit 0b45d6f236
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -373,7 +373,7 @@ def update_group_roles(group, debug=False):
# Iterate through each permission already assigned to this group,
# and create a simplified permission key string
for p in group.permissions.all():
for p in group.permissions.all().prefetch_related('content_type'):
(permission, app, model) = p.natural_key()
permission_string = '{app}.{perm}'.format(