diff options
Diffstat (limited to 'pydis_site/apps')
| -rw-r--r-- | pydis_site/apps/api/migrations/0068_split_nomination_tables.py | 15 | 
1 files changed, 14 insertions, 1 deletions
| diff --git a/pydis_site/apps/api/migrations/0068_split_nomination_tables.py b/pydis_site/apps/api/migrations/0068_split_nomination_tables.py index 2e2313ee..1c392365 100644 --- a/pydis_site/apps/api/migrations/0068_split_nomination_tables.py +++ b/pydis_site/apps/api/migrations/0068_split_nomination_tables.py @@ -21,6 +21,19 @@ def migrate_nominations(apps: Apps, schema_editor: BaseDatabaseSchemaEditor) ->          nomination_entry.save() +def unmigrate_nominations(apps: Apps, schema_editor: BaseDatabaseSchemaEditor) -> None: +    Nomination = apps.get_model("api", "Nomination") +    NominationEntry = apps.get_model("api", "NominationEntry") + +    for entry in NominationEntry.objects.all(): +        nomination = Nomination.objects.get(pk=entry.nomination.id) +        nomination.actor = entry.actor +        nomination.reason = entry.reason +        nomination.inserted_at = entry.inserted_at + +        nomination.save() + +  class Migration(migrations.Migration):      dependencies = [ @@ -43,7 +56,7 @@ class Migration(migrations.Migration):              ],              bases=(pydis_site.apps.api.models.mixins.ModelReprMixin, models.Model),          ), -        migrations.RunPython(migrate_nominations), +        migrations.RunPython(migrate_nominations, unmigrate_nominations),          migrations.RemoveField(              model_name='nomination',              name='actor', | 
