coderanger avatar coderanger committed 20a19ad

Add a compatibility hook to deal with creating django.contrib.auth permissions on migrated models.

Comments (0)

Files changed (1)

 """
 
 from django.dispatch import Signal
+from django.conf import settings
 
 # Sent at the start of the migration of an app
 pre_migrate = Signal(providing_args=["app"])
 
 # Sent after each run of a particular migration in a direction
 ran_migration = Signal(providing_args=["app","migration","method"])
+
+# Compatibility code for django.contrib.auth
+if 'django.contrib.auth' in settings.INSTALLED_APPS:
+    def create_permissions_compat(app, **kwargs):
+        from django.db.models import get_app
+        from django.contrib.auth.management import create_permissions
+        create_permissions(get_app(app), (), 0)
+    post_migrate.connect(create_permissions_compat)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.