From 6ff15a928a2c16e74d0f41ed440d0a337db66bf6 Mon Sep 17 00:00:00 2001 From: Jim Ladd Date: Mon, 8 Feb 2021 15:31:25 -0800 Subject: [PATCH] Register new column created by SQL * .. using FakeAddField model type * .. without doing this, Django won't know about the field we created using raw SQL --- awx/main/migrations/0124_event_partitions.py | 15 +++++++++++++++ awx/main/models/events.py | 3 +++ 2 files changed, 18 insertions(+) diff --git a/awx/main/migrations/0124_event_partitions.py b/awx/main/migrations/0124_event_partitions.py index 42e03157de..68c1969133 100644 --- a/awx/main/migrations/0124_event_partitions.py +++ b/awx/main/migrations/0124_event_partitions.py @@ -63,6 +63,16 @@ def migrate_event_data(apps, schema_editor): cursor.execute( f'DROP TABLE {tblname}_old' ) + + +class FakeAddField(migrations.AddField): + + def database_forwards(self, *args): + # this is intentionally left blank, because we're + # going to accomplish the migration with some custom raw SQL + pass + + class Migration(migrations.Migration): dependencies = [ @@ -71,4 +81,9 @@ class Migration(migrations.Migration): operations = [ migrations.RunPython(migrate_event_data), + FakeAddField( + model_name='jobevent', + name='job_created', + field=models.DateTimeField(editable=False), + ), ] diff --git a/awx/main/models/events.py b/awx/main/models/events.py index 25f8621672..64f44628cb 100644 --- a/awx/main/models/events.py +++ b/awx/main/models/events.py @@ -482,6 +482,9 @@ class JobEvent(BasePlaybookEvent): default='', editable=False, ) + job_created = models.DateTimeField( + editable=False + ) def get_absolute_url(self, request=None): return reverse('api:job_event_detail', kwargs={'pk': self.pk}, request=request)