docs: def get_method(self, method=None):
          """Returns the method to call on this instance as a string. Raises a
          HTTP exception if no method can be found. Aborts with a 405 status
          code for known methods (based on the :attr:`KNOWN_METHODS` list) and a
          501 status code for all other methods.
  
          :param method: Name of the method to return. Must be all-uppercase.
          :type method: str
  
          :raises: :class:`webob.exceptions.ResponseException` of status 405 or
                   501 if the method is not implemented on this resource.
          """
          if method is None:
              method = self.request.method
          if hasattr(self, method) and callable(getattr(self, method)):
              return method
          elif method == 'HEAD':
              return self.get_method('GET')
          # Error: did not find any method, raise a 405 or 501 exception
          elif method in self.KNOWN_METHODS:
              # Known HTTP methods => 405 Method Not Allowed
              raise_405(self)
          else:
              # Unknown HTTP methods => 501 Not Implemented
              raise_501(self)