Nach this post zu sehen, versuche ich meine eigene Gruppe am Projekt-Setup mit dieser Migration zu erstellen:Schaffung programmatisch eine Gruppe: Kann nicht Zugriffsberechtigungen von Migration
from django.db import migrations
from django.contrib.auth.models import Group, Permission
def create_group(apps, schema_editor):
group, created = Group.objects.get_or_create(name='thing_managers')
if created:
add_thing = Permission.objects.get(codename='add_thing')
group.permissions.add(add_thing)
group.save()
class Migration(migrations.Migration):
dependencies = [
('main', '0002_auto_20160720_1809'),
]
operations = [
migrations.RunPython(create_group),
]
Aber ich habe folgende Fehlermeldung:
django.contrib.auth.models.DoesNotExist: Permission matching query does not exist.
Hier ist mein Modell:
class Thing(models.Model):
pass
Warum kann ich das tun? Wie könnte ich das lösen?
Ich benutze django 1.9.
Zuerst sollten Sie Ihre Modelle nicht importieren von 'from django.contrib.auth.models import Group, Permission', aber mit' apps.get_model ("some_app", "model_name") '. Und 2. der Fehler ist ziemlich klar - Sie haben keine Erlaubnis mit 'codename = 'add_thing'' – Todor