Restful serializers useful tips

linkaiyi
Follow

get validated data

restful serializer convert json data to orderDict as tuple after validation

def create(self, validated_data):
    obj = OriginalModel.objects.create(**validated_data)
    obj.save(foo=validated_data['foo'])
    return obj

use the RelatedField for easily convert customized field for update and create

import time

class TrackListingField(serializers.RelatedField):
    def to_representation(self, value):
        duration = time.strftime('%M:%S', time.gmtime(value.duration))
        return 'Track %d: %s (%s)' % (value.order, value.name, duration)

class AlbumSerializer(serializers.ModelSerializer):
    tracks = TrackListingField(many=True)

    class Meta:
        model = Album
        fields = ['album_name', 'artist', 'tracks']
Object has 0 attachments

Was this article helpful?

This article is viewed 19 times!

Related Articles

0 Comments

Leave a Comment

Support