aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site/apps/api/serializers.py
diff options
context:
space:
mode:
authorGravatar kosayoda <[email protected]>2021-07-23 18:58:35 +0800
committerGravatar D0rs4n <[email protected]>2021-12-18 18:02:11 +0100
commitb082de6662e1b57f6831d219b44d95f93ed8a884 (patch)
tree399e94a76d334a82bbb7b3158c8740b4ab935056 /pydis_site/apps/api/serializers.py
parentMigrate misc field names and help text changes. (diff)
Correct Filter-FilterList relationship.
Instead of a many-many relationship, one filterlist has multiple filters. Nested serialization is read-only by default, so not all CRUD methods are implemented yet for the FilterList viewset.
Diffstat (limited to 'pydis_site/apps/api/serializers.py')
-rw-r--r--pydis_site/apps/api/serializers.py22
1 files changed, 12 insertions, 10 deletions
diff --git a/pydis_site/apps/api/serializers.py b/pydis_site/apps/api/serializers.py
index 584d1f22..afcf4d55 100644
--- a/pydis_site/apps/api/serializers.py
+++ b/pydis_site/apps/api/serializers.py
@@ -117,9 +117,21 @@ class DocumentationLinkSerializer(ModelSerializer):
fields = ('package', 'base_url', 'inventory_url')
+class FilterSerializer(ModelSerializer):
+ """A class providing (de-)serialization of `Filter` instances."""
+
+ class Meta:
+ """Metadata defined for the Django REST Framework."""
+
+ model = Filter
+ fields = ('id', 'content', 'description', 'additional_field', 'filter_list', 'override')
+
+
class FilterListSerializer(ModelSerializer):
"""A class providing (de-)serialization of `FilterList` instances."""
+ filters = FilterSerializer(many=True, read_only=True)
+
class Meta:
"""Metadata defined for the Django REST Framework."""
@@ -185,16 +197,6 @@ class FilterChannelRangeSerializer(ModelSerializer):
)
-class FilterSerializer(ModelSerializer):
- """A class providing (de-)serialization of `Filter` instances."""
-
- class Meta:
- """Metadata defined for the Django REST Framework."""
-
- model = Filter
- fields = ('id', 'content', 'description', 'additional_field', 'override')
-
-
class FilterOverrideSerializer(ModelSerializer):
"""A class providing (de-)serialization of `FilterOverride` instances."""