Skip to content

Commit 2566888

Browse files
Fix invalid CourseUpdate.status model field definition
The model field definition used the UpdateStatus enum incorrectly. The status choices were strings that started with "UpdateStatus.", e.g., "UpdateStatus.PENDING". The prefix "UpdateStatus" is not supposed to be saved to the database. It even breaches the max_length constraint of the CharField, but since SQLite ignores max_length, this does not cause issues when testing on SQLite.
1 parent 44ab3a0 commit 2566888

3 files changed

Lines changed: 20 additions & 2 deletions

File tree

builder/migrations/0003_auto_20210622_0829.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,6 @@ class Migration(migrations.Migration):
1818
migrations.AddField(
1919
model_name='courseupdate',
2020
name='status',
21-
field=models.CharField(choices=[(builder.models.UpdateStatus('PENDING'), 'PENDING'), (builder.models.UpdateStatus('RUNNING'), 'RUNNING'), (builder.models.UpdateStatus('SUCCESS'), 'SUCCESS'), (builder.models.UpdateStatus('FAILED'), 'FAILED'), (builder.models.UpdateStatus('SKIPPED'), 'SKIPPED')], default=builder.models.UpdateStatus('PENDING'), max_length=10),
21+
field=models.CharField(choices=[('PENDING', 'PENDING'), ('RUNNING', 'RUNNING'), ('SUCCESS', 'SUCCESS'), ('FAILED', 'FAILED'), ('SKIPPED', 'SKIPPED')], default='PENDING', max_length=10),
2222
),
2323
]
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Generated by Django 2.2.26 on 2022-01-27 17:07
2+
3+
from django.db import migrations, models
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
dependencies = [
9+
('builder', '0013_course_webhook_secret'),
10+
]
11+
12+
operations = [
13+
migrations.AlterField(
14+
model_name='courseupdate',
15+
name='status',
16+
field=models.CharField(choices=[('PENDING', 'PENDING'), ('RUNNING', 'RUNNING'), ('SUCCESS', 'SUCCESS'), ('FAILED', 'FAILED'), ('SKIPPED', 'SKIPPED')], default='PENDING', max_length=10),
17+
),
18+
]

builder/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class CourseUpdate(models.Model):
7979
request_ip = models.CharField(max_length=40)
8080
request_time = models.DateTimeField(auto_now_add=True)
8181
updated_time = models.DateTimeField(default=None, null=True, blank=True)
82-
status = models.CharField(max_length=10, default=UpdateStatus.PENDING, choices=[(tag, tag.value) for tag in UpdateStatus])
82+
status = models.CharField(max_length=10, default=UpdateStatus.PENDING.value, choices=[(tag.value, tag.value) for tag in UpdateStatus])
8383
log = models.TextField(default=None, null=True, blank=True)
8484

8585
class Meta:

0 commit comments

Comments
 (0)