title: django rest framework serializer - doesn't return empty list field
body: <p>I have a serializer for a model that contains JsonField. I want to always return specific fields, even when they are not found within the jsonField.
  When calling 'get' - it does return all fields in the serializer, but when calling 'update', it returns the instance with the updated fields and <code>allow_null=True</code>, so <code>default=list</code> field that wasn't update - would not return in the response. The question is how can I still return all serializer fields in response, including the <code>default=list</code> fields, even when they weren't updated and not exist?</p>
  <p>this is the serializer -</p>
  <pre><code>class ObjectsListSerializer(serializers.Serializer):
      days = serializers.IntegerField(allow_null=True, source='objects_list.days')
      user_list = serializers.ListField(child=serializers.CharField(), default=list, allow_empty=True, required=False, source='objects_list.user_list')
      manager = serializers.CharField(allow_null=True, source='objects_list.manager')
  
      def update(instance, validated_data):
                  if 'objects_list' in validated_data:
          for attr, value in validated_data['objects_list'].items():
              instance.objects_list[attr] = value
          instance.save()
  
          return instance
  </code></pre>
  <p>As mentioned, when sending 'get' request, even when 'objects_list' is empty, I would get</p>
  <pre><code>days=None
  user_list=[]
  manager=None
  </code></pre>
  <p>in the response</p>
  <p>But when user_list doesn't exist and I'm updating other field ('days' for example), 'user_list' will not exist in the response.
  Any idea how can I still return the empty list when it doesn't exist?</p>