              if getattr(v, 'read_only', True):
                  continue
  
              kwargs = {}
              kwargs['required'] = v.required
  
              #if getattr(v, 'queryset', None):
              #    kwargs['queryset'] = v.queryset
  
              if getattr(v, 'choices', None) is not None:
 
</s> remove             if getattr(v, 'choices', None) is not None:
                kwargs['choices'] = v.choices
 </s> add             if getattr(val, 'choices', None) is not None:
                kwargs['choices'] = val.choices </s> remove         for k, v in serializer.get_fields().items():
            if getattr(v, 'read_only', True):
 </s> add         for key, val in data.fields.items():
            if getattr(val, 'read_only', True): </s> remove     def serializer_to_form_fields(self, serializer):
 </s> add     def data_to_form_fields(self, data): </s> remove             if getattr(v, 'regex', None) is not None:
                kwargs['regex'] = v.regex
 </s> add             if getattr(val, 'regex', None) is not None:
                kwargs['regex'] = val.regex </s> remove             if getattr(v, 'widget', None):
                widget = copy.deepcopy(v.widget)
 </s> add             if getattr(val, 'widget', None):
                widget = copy.deepcopy(val.widget)
            kwargs['required'] = val.required
              if getattr(v, 'read_only', True):
                  continue
  
              kwargs = {}
            kwargs['required'] = val.required
  
              #if getattr(v, 'queryset', None):
              #    kwargs['queryset'] = v.queryset
  
              if getattr(v, 'choices', None) is not None:
keep keep keep keep replace keep keep keep keep keep
 Cleanup and dealing with empty form data. 
rest_framework/renderers.py