Django serializer for one object

后端 未结 3 1413
一个人的身影
一个人的身影 2020-12-29 05:09

I\'m trying to figure out a way to serialize some Django model object to JSON format, something like:

j = Job.objects.get(pk=1)
#############################         


        
3条回答
  •  太阳男子
    2020-12-29 05:30

    Method-1

    Use Django Serializer with python format

    from django.core import serializers
    
    j = Job.objects.get(pk=1)
    response = serializers.serialize('python', [j], ensure_ascii=False)

    Method-2

    use json format while serializing and loads the string response

    import json
    from django.core import serializers
    
    j = Job.objects.get(pk=1)
    json_str_response = serializers.serialize('json', [j], ensure_ascii=False)
    response = json.loads(json_str_response)[0]

    Method-3

    Use Django REST Framework's Serializer class define a serializer class and serialize the instance as

    from rest_framework import serializers
    
    
    class JobSerializer(serializers.ModelSerializer):
        class Meta:
            model = Job
            fields = '__all__'
    
    
    j = Job.objects.get(pk=1)
    response = JobSerializer(instance=j).data
    

    Reference
    1. Serializer Django model object

提交回复
热议问题