|
10 | 10 | sys.exit()
|
11 | 11 |
|
12 | 12 |
|
13 |
| -for params in object_permissions: |
| 13 | +for permission_name, permission_details in object_permissions.items(): |
14 | 14 |
|
15 | 15 | object_permission, created = ObjectPermission.objects.get_or_create(
|
16 |
| - name=params["name"], |
17 |
| - description=params["description"], |
18 |
| - enabled=params["enabled"], |
19 |
| - actions=params["actions"], |
| 16 | + name=permission_name, |
| 17 | + description=permission_details["description"], |
| 18 | + enabled=permission_details["enabled"], |
| 19 | + actions=permission_details["actions"], |
20 | 20 | )
|
21 | 21 |
|
22 | 22 | # Need to try to pass a list of model_name and app_label for more than the current ALL
|
23 |
| - # object_types = ContentType.objects.filter(app_label__in=params.pop("object_types")) |
24 |
| - # object_permission.object_types.set(ContentType.objects.filter(app_label__in=params.pop("object_types"))) |
| 23 | + # object_types = ContentType.objects.filter(app_label__in=permission_details["object_types"]) |
| 24 | + # object_permission.object_types.set(ContentType.objects.filter(app_label__in=permission_details"object_types"])) |
25 | 25 | object_permission.object_types.set(ContentType.objects.all())
|
26 | 26 | object_permission.save()
|
27 | 27 |
|
28 | 28 | print("🔓 Created object permission", object_permission.name)
|
29 |
| - |
30 |
| - for groupname in params.get("groups", []): |
31 |
| - group = AdminGroup.objects.get(name=groupname) |
32 |
| - |
33 |
| - if group: |
34 |
| - object_permission.groups.add(group) |
35 |
| - print( |
36 |
| - " 👥 Assigned group %s object permission of %s" % (groupname, object_permission.name) |
37 |
| - ) |
38 |
| - |
39 |
| - for username in params.get("users", []): |
40 |
| - user = AdminUser.objects.get(username=username) |
41 |
| - |
42 |
| - if user: |
43 |
| - object_permission.users.add(user) |
44 |
| - print( |
45 |
| - " 👤 Assigned user %s object permission of %s" % (username, object_permission.name) |
46 |
| - ) |
| 29 | + |
| 30 | + if permission_details.get("groups", 0): |
| 31 | + for groupname in permission_details["groups"]: |
| 32 | + group = AdminGroup.objects.get(name=groupname) |
| 33 | + |
| 34 | + if group: |
| 35 | + object_permission.groups.add(group) |
| 36 | + print( |
| 37 | + " 👥 Assigned group %s object permission of %s" % (groupname, object_permission.name) |
| 38 | + ) |
| 39 | + |
| 40 | + if permission_details.get("users", 0): |
| 41 | + for username in permission_details["users"]: |
| 42 | + user = AdminUser.objects.get(username=username) |
| 43 | + |
| 44 | + if user: |
| 45 | + object_permission.users.add(user) |
| 46 | + print( |
| 47 | + " 👤 Assigned user %s object permission of %s" % (username, object_permission.name) |
| 48 | + ) |
47 | 49 |
|
48 | 50 | object_permission.save()
|
0 commit comments