aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar MarkKoz <[email protected]>2020-03-21 10:04:44 -0700
committerGravatar MarkKoz <[email protected]>2020-03-21 11:08:12 -0700
commit145beb37fcb4fa2f487f18b234dd72bc4e10c279 (patch)
treec2fe86bae156cfa990c54fdf22b5d8c5b26f9932
parentUse basename instead of base_name with DRF router (diff)
Allow empty list for message embeds
By default, blank=False for ArrayFields but allow_empty=True for ListField. Before DRF 3.10 there was a bug that ListField didn't respect the default value of blank=False and thus created a ListField in the serialiser with the default of allow_empty=True. We were relying on the behaviour of that bug. See encode/django-rest-framework#6597.
-rw-r--r--pydis_site/apps/api/migrations/0051_allow_blank_message_embeds.py21
-rw-r--r--pydis_site/apps/api/models/bot/message.py1
2 files changed, 22 insertions, 0 deletions
diff --git a/pydis_site/apps/api/migrations/0051_allow_blank_message_embeds.py b/pydis_site/apps/api/migrations/0051_allow_blank_message_embeds.py
new file mode 100644
index 00000000..e617e1c9
--- /dev/null
+++ b/pydis_site/apps/api/migrations/0051_allow_blank_message_embeds.py
@@ -0,0 +1,21 @@
+# Generated by Django 3.0.4 on 2020-03-21 17:05
+
+import django.contrib.postgres.fields
+import django.contrib.postgres.fields.jsonb
+from django.db import migrations
+import pydis_site.apps.api.models.bot.tag
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('api', '0050_remove_infractions_active_default_value'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='deletedmessage',
+ name='embeds',
+ field=django.contrib.postgres.fields.ArrayField(base_field=django.contrib.postgres.fields.jsonb.JSONField(validators=[pydis_site.apps.api.models.bot.tag.validate_tag_embed]), blank=True, help_text='Embeds attached to this message.', size=None),
+ ),
+ ]
diff --git a/pydis_site/apps/api/models/bot/message.py b/pydis_site/apps/api/models/bot/message.py
index 8b18fc9f..0b279580 100644
--- a/pydis_site/apps/api/models/bot/message.py
+++ b/pydis_site/apps/api/models/bot/message.py
@@ -49,6 +49,7 @@ class Message(ModelReprMixin, models.Model):
pgfields.JSONField(
validators=(validate_tag_embed,)
),
+ blank=True,
help_text="Embeds attached to this message."
)
attachments = pgfields.ArrayField(