  
              return (content_type, request.POST[self.CONTENT_PARAM])
          elif request.method == 'PUT':
              f = SocketFile(request.environ['wsgi.input'], request.META['CONTENT_LENGTH'])
              returned = (content_type, f.read())
              return returned
              #try:
              #    f.close()
              #except Exception as e:
              #    print 'exception', e
          else:
              return (content_type, request.raw_post_data)
 
</s> remove 
class FormParser(BaseParser):
 </s> add class DataFlatener(object):

    def flatten_data(self, data):
        """Given a data dictionary ``{<attr_name>: <value_list>}``, returns a flattened dictionary according to :meth:`FormParser.is_a_list`.
        """
        #TODO : document + test
        flatdata = dict()
        for attr_name, attr_value in data.items():
            if self.is_a_list(attr_name):
                if isinstance(attr_value, list):
                    flatdata[attr_name] = attr_value
                else:
                    flatdata[attr_name] = [attr_value]
            else:
                if isinstance(attr_value, list):
                    flatdata[attr_name] = attr_value[0]
                else:
                    flatdata[attr_name] = attr_value 
        return flatdata

    def is_a_list(self, attr_name):
        """ """
        #TODO: document
        return False

class FormParser(BaseParser, DataFlatener): </s> remove class MultipartParser(FormParser):
 </s> add class MultipartParser(BaseParser, DataFlatener): </s> remove         if request.method == 'POST':
 </s> add         elif request.method == 'POST': </s> remove             # Flattening the parsed query data
            for key, val in data.items():
                data[key] = val[0]
 </s> add  </s> remove             data = dict(data)
            files = dict(files)
 </s> add 
            return (content_type, f.read())
  
              return (content_type, request.POST[self.CONTENT_PARAM])
          elif request.method == 'PUT':
              f = SocketFile(request.environ['wsgi.input'], request.META['CONTENT_LENGTH'])
            return (content_type, f.read())
            return (content_type, f.read())
            return (content_type, f.read())
            return (content_type, f.read())
            return (content_type, f.read())
            return (content_type, f.read())
          else:
              return (content_type, request.raw_post_data)
keep keep keep keep replace replace replace replace replace replace keep keep
 forms and multipat parsers now flaten data 
djangorestframework/content.py