def delete(self, request, lib_key_str, link_id): # pylint: disable=unused-argument """ Delete a link from this library. """ key = LibraryLocatorV2.from_string(lib_key_str) api.require_permission_for_library_key(key, request.user, permissions.CAN_EDIT_THIS_CONTENT_LIBRARY) api.update_bundle_link(key, link_id, delete=True) return Response({})
def patch(self, request, lib_key_str, link_id): """ Update the specified link to point to a different version of its target bundle. Pass e.g. {"version": 40} or pass {"version": None} to update to the latest published version. """ key = LibraryLocatorV2.from_string(lib_key_str) api.require_permission_for_library_key(key, request.user, permissions.CAN_EDIT_THIS_CONTENT_LIBRARY) serializer = LibraryBundleLinkUpdateSerializer(data=request.data) serializer.is_valid(raise_exception=True) api.update_bundle_link(key, link_id, version=serializer.validated_data['version']) return Response({})