def METHOD_NAME(self, data, view, method, request):
    # Never show auto-generated form (only raw form).
    obj = getattr(view, 'object', None)
    if obj is None and hasattr(view, 'get_object') and hasattr(view, 'retrieve'):
        try:
            view.object = view.get_object()
            obj = view.object
        except Exception:
            obj = None
    with override_method(view, request, method) as request:
        if not self.show_form_for_method(view, method, request, obj):
            return
        if method in ('DELETE', 'OPTIONS'):
            return True  # Don't actually need to return a form