commands.makegroupmigrations
Overview
Management command for generating group permission migrations from change history.
Classes
get_group_migration_imports
Return the full, ordered set of import lines a group migration file's import section is replaced with.
direct_runpython_import adds a direct from django.db.migrations import RunPython import, needed when the class Migration block being preserved calls RunPython(...) directly instead of migrations.RunPython(...).
When as_mapping is True, an ordered mapping is returned instead: keys are single-name tuples (an import only ever binds one name, per this project's force-single-line isort convention) and values are the current import line, each ending in its own newline and prefixed with a blank line where it opens a new isort group. This is used by updategroupmigrations to update or insert only the imports it recognizes in an existing migration, leaving any hand-added imports (or comments) around them untouched.
Signature
get_group_migration_imports(import_instead, direct_runpython_import, as_mapping)
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| import_instead | yes | ||
| direct_runpython_import | yes | ||
| as_mapping | yes |
Source
server/vueda/user/management/commands/makegroupmigrations.py:220
get_group_migration_sources
Return the source-code strings inserted into a group migration file.
When as_mapping is True, an ordered mapping is returned instead: keys are tuples of every name (old and current) that identifies a given function/class across versions of this command, and values are the current source for it. This is used by updategroupmigrations to replace only the functions it recognizes in an existing migration, leaving any hand-added code around them untouched.
Signature
get_group_migration_sources(import_instead, as_mapping)
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| import_instead | yes | ||
| as_mapping | yes |
Source
server/vueda/user/management/commands/makegroupmigrations.py:272
Source
server/vueda/user/management/commands/makegroupmigrations.py