Exemplo n.º 1
0
class MessageDetailsSerializer(serializers.ModelSerializer):
    user = SimpleUserSerializer()
    recipients = SimpleUserSerializer(many=True)

    class Meta:
        model = Message
        fields = ('user', 'recipients')
Exemplo n.º 2
0
class TaskDetailsSerializer(ContentTypeAnnotatedSerializer):
    user = SimpleUserSerializer()
    skills = SkillSerializer(many=True)
    assignee = serializers.SerializerMethodField(required=False,
                                                 read_only=True)
    applications = SimpleApplicationSerializer(many=True,
                                               source='application_set')
    participation = SimpleParticipationSerializer(many=True,
                                                  source='participation_set')
    milestones = SimpleParticipationSerializer(many=True,
                                               source='milestone_set')

    class Meta:
        model = Task
        fields = ('user', 'skills', 'assignee', 'applications',
                  'participation', 'milestones')

    def get_assignee(self, obj):
        try:
            assignee = obj.participation_set.get(
                (Q(accepted=True) | Q(responded=False)), assignee=True)
            return {
                'user': SimpleUserSerializer(assignee.user).data,
                'accepted': assignee.accepted,
                'responded': assignee.responded
            }
        except:
            return None
Exemplo n.º 3
0
class SavedTaskDetailsSerializer(serializers.ModelSerializer):
    user = SimpleUserSerializer()
    task = SimpleTaskSerializer()

    class Meta:
        model = SavedTask
        fields = ('user', 'task')
Exemplo n.º 4
0
class TaskRequestDetailsSerializer(serializers.ModelSerializer):
    user = SimpleUserSerializer()
    task = SimpleTaskSerializer()

    class Meta:
        model = TaskRequest
        fields = ('user', 'task')
Exemplo n.º 5
0
class ParticipationDetailsSerializer(SimpleParticipationSerializer):
    created_by = SimpleUserSerializer()
    task = SimpleTaskSerializer()

    class Meta:
        model = Participation
        fields = ('user', 'task', 'created_by')
Exemplo n.º 6
0
class SimpleTaskSerializer(ContentTypeAnnotatedSerializer):
    user = SimpleUserSerializer()

    class Meta:
        model = Task
        fields = ('id', 'user', 'title', 'currency', 'fee', 'closed', 'paid',
                  'display_fee')
Exemplo n.º 7
0
 def get_assignee(self, obj):
     try:
         assignee = obj.participation_set.get(
             (Q(accepted=True) | Q(responded=False)), assignee=True)
         return {
             'user': SimpleUserSerializer(assignee.user).data,
             'accepted': assignee.accepted,
             'responded': assignee.responded
         }
     except:
         return None
Exemplo n.º 8
0
class CommentSerializer(serializers.ModelSerializer):
    user = SimpleUserSerializer(required=False,
                                read_only=True,
                                default=CreateOnlyCurrentUserDefault())
    uploads = serializers.SerializerMethodField(read_only=True, required=False)

    class Meta:
        model = Comment
        read_only_fields = ('created_at', )

    def get_uploads(self, obj):
        content_type = ContentType.objects.get_for_model(Comment)
        uploads = Upload.objects.filter(content_type=content_type,
                                        object_id=obj.id)
        return UploadSerializer(uploads, many=True).data
Exemplo n.º 9
0
class SimpleParticipationSerializer(ContentTypeAnnotatedSerializer):
    user = SimpleUserSerializer()

    class Meta:
        model = Participation
        exclude = ('created_at', )
Exemplo n.º 10
0
class ReplyDetailsSerializer(serializers.ModelSerializer):
    user = SimpleUserSerializer()

    class Meta:
        model = Reply
        fields = ('user',)