summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-09-27 18:29:16 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-09-27 18:29:16 +0200
commit2fb1f7613141fc5f4e9c3486a4b1aacd7831605e (patch)
tree5621f4a010ffb8b87af50b2b368cfc184c4cdb6a
parent2383d5595a982dfa3aa9e25179117358d71fcc9a (diff)
downloadIshtar-2fb1f7613141fc5f4e9c3486a4b1aacd7831605e.tar.bz2
Ishtar-2fb1f7613141fc5f4e9c3486a4b1aacd7831605e.zip
Fix regeneration of permissions command
-rw-r--r--ishtar_common/management/commands/regenerate_permissions.py18
1 files changed, 6 insertions, 12 deletions
diff --git a/ishtar_common/management/commands/regenerate_permissions.py b/ishtar_common/management/commands/regenerate_permissions.py
index 599e64d64..9cd8b2277 100644
--- a/ishtar_common/management/commands/regenerate_permissions.py
+++ b/ishtar_common/management/commands/regenerate_permissions.py
@@ -19,9 +19,9 @@
from django.core.management.base import BaseCommand
-from django.contrib.contenttypes.models import ContentType
-from django.contrib.auth.models import Permission
+from django.contrib.auth.management import create_permissions
+from django.apps import apps
class Command(BaseCommand):
@@ -29,13 +29,7 @@ class Command(BaseCommand):
help = 'Regenerate permissions'
def handle(self, *args, **options):
- for ct in ContentType.objects.all():
- model = ct.model_class()
- if not model:
- continue
- for perm_slug, perm_label in model._meta.permissions:
- perm, c = Permission.objects.get_or_create(
- content_type=ct, codename=perm_slug,
- defaults={'name': perm_label})
- if c:
- print('Permission {} created.'.format(perm_label))
+ for app in ['ishtar_common', 'archaeological_operations',
+ 'archaeological_context_records',
+ 'archaeological_finds', 'archaeological_warehouse']:
+ create_permissions(apps.get_app_config(app))