From 4f6cbb768425359b785b9b433ed8796e1725f23c Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 29 Nov 2019 09:55:06 +0300 Subject: [PATCH] ReviewBackSerializer --- .../commands/add_review_priority.py | 2 -- apps/review/serializers/back.py | 33 +++++++++++++++++-- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/apps/review/management/commands/add_review_priority.py b/apps/review/management/commands/add_review_priority.py index 4c43bc52..97525cf9 100644 --- a/apps/review/management/commands/add_review_priority.py +++ b/apps/review/management/commands/add_review_priority.py @@ -21,5 +21,3 @@ class Command(BaseCommand): review.save() self.stdout.write(self.style.WARNING(f'Priority added to review objects.')) - - diff --git a/apps/review/serializers/back.py b/apps/review/serializers/back.py index 6c851796..05a5d702 100644 --- a/apps/review/serializers/back.py +++ b/apps/review/serializers/back.py @@ -1,15 +1,43 @@ """Review app back serializers.""" +from django.contrib.contenttypes.models import ContentType from rest_framework import serializers -from review import models +from account.models import User +from review.models import Review + + +class _ReviewerSerializer(serializers.ModelSerializer): + class Meta: + model = User + fields = ( + 'id', + 'username', + 'first_name', + 'last_name', + 'email', + ) + + +class _ContentTypeSerializer(serializers.ModelSerializer): + class Meta: + model = ContentType + fields = ( + 'id', + 'app_label', + 'model', + ) class ReviewBackSerializer(serializers.ModelSerializer): + reviewer_data = _ReviewerSerializer(read_only=True, source='reviewer') + content_type_data = _ContentTypeSerializer(read_only=True, source='content_type') + class Meta: - model = models.Review + model = Review fields = ( 'id', 'reviewer', + 'reviewer_data', 'text', 'status', 'mark', @@ -19,5 +47,6 @@ class ReviewBackSerializer(serializers.ModelSerializer): 'vintage', # 'country', 'content_type', + 'content_type_data', 'object_id', )