diff options
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 |
commit | 2fb1f7613141fc5f4e9c3486a4b1aacd7831605e (patch) | |
tree | 5621f4a010ffb8b87af50b2b368cfc184c4cdb6a /ishtar_common/management/commands/regenerate_permissions.py | |
parent | 2383d5595a982dfa3aa9e25179117358d71fcc9a (diff) | |
download | Ishtar-2fb1f7613141fc5f4e9c3486a4b1aacd7831605e.tar.bz2 Ishtar-2fb1f7613141fc5f4e9c3486a4b1aacd7831605e.zip |
Fix regeneration of permissions command
Diffstat (limited to 'ishtar_common/management/commands/regenerate_permissions.py')
-rw-r--r-- | ishtar_common/management/commands/regenerate_permissions.py | 18 |
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)) |