              })
  
          ret = OrderedDict()
          errors = OrderedDict()
          fields = [
              field for field in self.fields.values()
              if (not field.read_only) or (field.default is not empty)
          ]
  
          for field in fields:
              validate_method = getattr(self, 'validate_' + field.field_name, None)
              primitive_value = field.get_value(data)
              try:
 
</s> remove         fields = [field for field in self.fields.values() if not field.write_only]
 </s> add         fields = self._to_representation_fields
        fields = self._to_internal_value_fields
              })
  
          ret = OrderedDict()
          errors = OrderedDict()
        fields = self._to_internal_value_fields
        fields = self._to_internal_value_fields
        fields = self._to_internal_value_fields
        fields = self._to_internal_value_fields
  
          for field in fields:
              validate_method = getattr(self, 'validate_' + field.field_name, None)
              primitive_value = field.get_value(data)
              try:
keep keep keep keep replace replace replace replace keep keep keep keep keep
 Cache fields list for to_internal_value and to_representation. 
rest_framework/serializers.py