Added validation on collection serializers

This commit is contained in:
Eliot Berriot 2018-04-07 17:18:54 +02:00
parent 33972f1f40
commit 4320fc77b2
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
3 changed files with 64 additions and 2 deletions

View file

@ -21,6 +21,7 @@ AP_CONTEXT = [
{},
]
class ActorSerializer(serializers.ModelSerializer):
# left maps to activitypub fields, right to our internal models
id = serializers.URLField(source='url')
@ -206,6 +207,11 @@ OBJECT_SERIALIZERS = {
class PaginatedCollectionSerializer(serializers.Serializer):
type = serializers.ChoiceField(choices=['Collection'])
totalItems = serializers.IntegerField(min_value=0)
items = serializers.ListField()
actor = serializers.URLField()
id = serializers.URLField()
def to_representation(self, conf):
paginator = Paginator(
@ -230,6 +236,14 @@ class PaginatedCollectionSerializer(serializers.Serializer):
class CollectionPageSerializer(serializers.Serializer):
type = serializers.ChoiceField(choices=['CollectionPage'])
totalItems = serializers.IntegerField(min_value=0)
items = serializers.ListField()
actor = serializers.URLField()
id = serializers.URLField()
prev = serializers.URLField(required=False)
next = serializers.URLField(required=False)
partOf = serializers.URLField()
def to_representation(self, conf):
page = conf['page']