You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

36 lines
937 B

from rest_framework.serializers import ModelSerializer
from rest_framework import serializers
from .models import Review
from users.serializers import UserSerializer, TeamSerializer
class ReviewSerializer(ModelSerializer):
target_user = serializers.SerializerMethodField(read_only=True)
class Meta:
model = Review
fields = (
'id',
'text',
'type',
'created',
'project',
'from_customer',
'from_contractor',
'from_team',
'target_customer',
'target_contractor',
'target_team',
'target_user',
)
def get_target_user(self, obj):
if obj.target_customer:
return obj.target_customer.pk
elif obj.target_contractor:
return obj.target_contractor.pk
elif obj.target_team:
return obj.target_team.owner.pk