Skip to content

Commit 4df312c

Browse files
[IMPROVEMENT] Add API to get Shard's projects #714
2 parents 9e22f2a + 8a92990 commit 4df312c

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

promgen/rest.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,15 @@ def usages(self, request, name):
121121

122122
return HttpResponse(response.content, content_type="application/json")
123123

124+
@action(detail=True, methods=["get"])
125+
def projects(self, request, name):
126+
shard = self.get_object()
127+
projects = shard.project_set.all()
128+
if not request.user.is_superuser:
129+
accessible_projects = permissions.get_accessible_projects_for_user(request.user)
130+
projects = projects.filter(pk__in=accessible_projects)
131+
return Response(serializers.ProjectSerializer(projects, many=True).data)
132+
124133

125134
class RuleMixin:
126135
@action(detail=True, methods=["get"], renderer_classes=[renderers.RuleRenderer])

0 commit comments

Comments
 (0)