docs: def get_rel_desc(instance, key, action):
      """
      Fetch the appropriate descriptor for the relationship.
  
      :param instance: Model instance
      :param key: Name of the relationship
      :param action: RelationshipAction
      """
      descs = instance.__jsonapi_rel_desc__.get(key, {})
      if action == RelationshipActions.GET:
          check_permission(instance, key, Permissions.VIEW)
          return descs.get(action, lambda x: getattr(x, key))
      elif action == RelationshipActions.APPEND:
          check_permission(instance, key, Permissions.CREATE)
          return descs.get(action, lambda x, v: getattr(x, key).append(v))
      elif action == RelationshipActions.SET:
          check_permission(instance, key, Permissions.EDIT)
          return descs.get(action, lambda x, v: setattr(x, key, v))
      else:
          check_permission(instance, key, Permissions.DELETE)
          return descs.get(action, lambda x, v: getattr(x, key).remove(v))