From ca48841cebaf73a53bc4750244b0f94bbd4eaf7d Mon Sep 17 00:00:00 2001 From: Erwan Rouchet <rouchet@teklia.com> Date: Thu, 3 May 2018 12:55:23 +0200 Subject: [PATCH] Update SearchResultSerializer --- src/documents/serializers.py | 56 +++++++++++------------------------- 1 file changed, 16 insertions(+), 40 deletions(-) diff --git a/src/documents/serializers.py b/src/documents/serializers.py index 193f349952..49a95a2ad5 100644 --- a/src/documents/serializers.py +++ b/src/documents/serializers.py @@ -34,28 +34,6 @@ class TranscriptionSerializer(serializers.ModelSerializer): ) -class SearchResultSerializer(serializers.ModelSerializer): - """ - Link between objects & their search indexation - """ - zones = ZoneSerializer(many=True) - parents = serializers.SerializerMethodField() - - class Meta: - model = Transcription - fields = ( - 'id', - 'text', - 'line', - 'score', - 'zones', - 'parents', - ) - - def get_parents(self, obj): - return DocumentLightSerializer(Document.objects.get_ascending(obj.id), many=True).data - - class DocumentLightSerializer(serializers.ModelSerializer): """ Serialises a Document @@ -90,39 +68,37 @@ class PageLightSerializer(serializers.ModelSerializer): ) -class PageSerializer(serializers.ModelSerializer): +class DocumentSerializer(serializers.ModelSerializer): """ - Serialises a Page, for search results + Fully Serialises a document """ - indexes = SearchResultSerializer(many=True) - page_type = EnumField() - direction = EnumField() - images = ImageSerializer(many=True) + type = EnumField() class Meta: - model = Page + model = Document fields = ( 'id', - 'page_type', - 'nb', - 'direction', - 'images', - 'indexes', + 'type', + 'name', ) -class DocumentSerializer(serializers.ModelSerializer): +class SearchResultSerializer(serializers.ModelSerializer): """ - Fully Serialises a document + Link between objects & their search indexation """ - type = EnumField() + zones = ZoneSerializer(many=True) + parents = DocumentLightSerializer(source='parent_docs', many=True) class Meta: - model = Document + model = Transcription fields = ( 'id', - 'type', - 'name', + 'text', + 'line', + 'score', + 'zones', + 'parents', ) -- GitLab