          if not getattr(view, 'get_serializer', None) or not parsers.FormParser in view.parser_classes:
              media_types = [parser.media_type for parser in view.parser_classes]
              return self.get_generic_content_form(media_types)
  
          # Creating an on the fly form see: http://stackoverflow.com/questions/3915024/dynamically-creating-classes-python
          obj, data = None, None
          if getattr(view, 'object', None):
              obj = view.object
  
          serializer = view.get_serializer(instance=obj)
          fields = self.serializer_to_form_fields(serializer)
  
          OnTheFlyForm = type("OnTheFlyForm", (forms.Form,), fields)
          if obj:
 
</s> remove         if not self.show_form_for_method(view, method, request):
 </s> add         obj = getattr(view, 'object', None)
        if not self.show_form_for_method(view, method, request, obj): </s> remove         if obj:
            data = serializer.data
 </s> add         data = (obj is not None) and serializer.data or None </s> remove     def show_form_for_method(self, view, method, request):
 </s> add     def show_form_for_method(self, view, method, request, obj): </s> remove             if not view.has_permission(request):
 </s> add             if not view.has_permission(request, obj):
          if not getattr(view, 'get_serializer', None) or not parsers.FormParser in view.parser_classes:
              media_types = [parser.media_type for parser in view.parser_classes]
              return self.get_generic_content_form(media_types)
  





          serializer = view.get_serializer(instance=obj)
          fields = self.serializer_to_form_fields(serializer)
  
          OnTheFlyForm = type("OnTheFlyForm", (forms.Form,), fields)
          if obj:
keep keep keep keep replace replace replace replace replace keep keep keep keep keep
 Object-level permissions respected by Browseable API 
rest_framework/renderers.py