              if (hasattr(view, 'get_serializer') and renderer_class):
                  # View has a serializer defined and parser class has a
                  # corresponding renderer that can be used to render the data.
  
                  # Get a read-only version of the serializer
                  serializer = view.get_serializer(instance=instance)
                  if instance is None:
                      for name, field in serializer.fields.items():
                          if getattr(field, 'read_only', None):
                              del serializer.fields[name]
 
</s> remove             if not field.write_only
 </s> add             if not field.read_only </s> remove                 if instance is None:
                    for name, field in serializer.fields.items():
                        if getattr(field, 'read_only', None):
                            del serializer.fields[name]
 </s> add 
              if (hasattr(view, 'get_serializer') and renderer_class):
                  # View has a serializer defined and parser class has a
                  # corresponding renderer that can be used to render the data.
  

                  serializer = view.get_serializer(instance=instance)
                  if instance is None:
                      for name, field in serializer.fields.items():
                          if getattr(field, 'read_only', None):
                              del serializer.fields[name]
keep keep keep keep replace keep keep keep keep keep
 Fix initial data on serializers to reflect writable fields 
rest_framework/renderers.py