docs: def from_key(key):
      """Returns the model instance based on the key.
  
      Raises BadKeyError if the key is not recognized by
      redisco or no defined model can be found.
      Returns None if the key could not be found.
      """
      model = get_model_from_key(key)
      if model is None:
          raise BadKeyError
      try:
          _, id = key.split(':', 2)
          id = int(id)
      except ValueError, TypeError:
          raise BadKeyError
      return model.objects.get_by_id(id)