def list(self, request, *args, **kwargs):
"""
Returns a list of all currently available projects with links to
relevant API endpoints
"""
# Project list can only change with code addition and app restart,
# so it makes sense to cache it on first request after restart
projects = cache.get_or_set(
key=utils.AVAILABLE_PROJECTS_KEY,
default=utils.get_projects(request),
timeout=None, # This will be invalidated on app restart
)
return Response(projects)
评论列表
文章目录