code: def create_atomic_wrapper(cls, wrapped_func):
          
          def _create_atomic_wrapper(*args, **kwargs):
              """Actual wrapper."""
              # When a view call fails due to a permissions error, it raises an exception.
              # An uncaught exception breaks the DB transaction for any following DB operations
              # unless it's wrapped in a atomic() decorator or context manager.
              with transaction.atomic():
                  return wrapped_func(*args, **kwargs)
  
          return _create_atomic_wrapper
docs: Returns a wrapped function.