Skip to content

Commit 1f6bf40

Browse files
authored
🎨 Format Python code with psf/black
1 parent e263eb2 commit 1f6bf40

File tree

9 files changed

+304
-176
lines changed

9 files changed

+304
-176
lines changed

api/views.py

Lines changed: 128 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -4,164 +4,187 @@
44

55
from . import serializers
66
from . import models
7-
from .permissions import IsLinkOwner, IsSubTopicLinkOwner, IsSubTopicOwner, IsTopicOwner, IsCurationOwner
7+
from .permissions import (
8+
IsLinkOwner,
9+
IsSubTopicLinkOwner,
10+
IsSubTopicOwner,
11+
IsTopicOwner,
12+
IsCurationOwner,
13+
)
814

915
from rest_framework.decorators import api_view
1016
from rest_framework.response import Response
1117
from rest_framework.reverse import reverse
1218

1319

14-
@api_view(['GET'])
20+
@api_view(["GET"])
1521
def api_root(request, format=None):
16-
return Response({
17-
'subjects': reverse('subject-list', request=request, format=format),
18-
'curations': reverse('curation-list', request=request, format=format)
19-
})
20-
class SubjectList(mixins.ListModelMixin,
21-
generics.GenericAPIView):
22+
return Response(
23+
{
24+
"subjects": reverse("subject-list", request=request, format=format),
25+
"curations": reverse("curation-list", request=request, format=format),
26+
}
27+
)
28+
29+
30+
class SubjectList(mixins.ListModelMixin, generics.GenericAPIView):
2231
queryset = models.Subject.objects.all()
2332
serializer_class = serializers.SubjectSerializer
2433

2534
def get(self, request, *args, **kwargs):
2635
return self.list(request, *args, **kwargs)
2736

2837

29-
class SubjectDetail(mixins.RetrieveModelMixin,
30-
generics.GenericAPIView):
38+
class SubjectDetail(mixins.RetrieveModelMixin, generics.GenericAPIView):
3139
queryset = models.Subject.objects.all()
3240
serializer_class = serializers.SubjectSerializer
3341

3442
def retrieve(self, request, *args, **kwargs):
3543
return self.create(request, *args, **kwargs)
3644

3745

38-
class CurationList(mixins.ListModelMixin,
39-
mixins.CreateModelMixin,
40-
generics.GenericAPIView):
46+
class CurationList(
47+
mixins.ListModelMixin, mixins.CreateModelMixin, generics.GenericAPIView
48+
):
49+
50+
queryset = models.Curation.objects.all()
51+
serializer_class = serializers.CurationSerializer
52+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsCurationOwner]
53+
54+
def get_queryset(self):
55+
"""
56+
Optionally restricts the returned purchases to a given user,
57+
by filtering against a `username` query parameter in the URL.
58+
"""
59+
queryset = models.Curation.objects.all()
60+
subject = self.request.query_params.get("subject")
61+
if subject is not None:
62+
queryset = queryset.filter(subject=subject)
63+
return queryset
64+
65+
def post(self, request, *args, **kwargs):
66+
return self.create(request, *args, **kwargs)
4167

42-
queryset = models.Curation.objects.all()
43-
serializer_class = serializers.CurationSerializer
44-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsCurationOwner]
68+
def get(self, request, *args, **kwargs):
69+
return self.list(request, *args, **kwargs)
4570

46-
def get_queryset(self):
47-
"""
48-
Optionally restricts the returned purchases to a given user,
49-
by filtering against a `username` query parameter in the URL.
50-
"""
51-
queryset = models.Curation.objects.all()
52-
subject = self.request.query_params.get('subject')
53-
if subject is not None:
54-
queryset = queryset.filter(subject=subject)
55-
return queryset
71+
def perform_create(self, serializer):
72+
serializer.save(owner=self.request.user)
5673

57-
def post(self, request, *args, **kwargs):
58-
return self.create(request, *args, **kwargs)
5974

60-
def get(self, request, *args, **kwargs):
61-
return self.list(request, *args, **kwargs)
62-
63-
def perform_create(self, serializer):
64-
serializer.save(owner=self.request.user)
75+
class CurationDetail(
76+
mixins.RetrieveModelMixin,
77+
mixins.DestroyModelMixin,
78+
mixins.UpdateModelMixin,
79+
generics.GenericAPIView,
80+
):
6581

82+
queryset = models.Curation.objects.all()
83+
serializer_class = serializers.CurationSerializer
6684

67-
class CurationDetail(mixins.RetrieveModelMixin,
68-
mixins.DestroyModelMixin,
69-
mixins.UpdateModelMixin,
70-
generics.GenericAPIView):
85+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsCurationOwner]
7186

72-
queryset = models.Curation.objects.all()
73-
serializer_class = serializers.CurationSerializer
87+
def get(self, request, *args, **kwargs):
88+
return self.retrieve(request, *args, **kwargs)
7489

75-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsCurationOwner]
90+
def put(self, request, *args, **kwargs):
91+
return self.update(request, *args, **kwargs)
7692

77-
def get(self, request, *args, **kwargs):
78-
return self.retrieve(request, *args, **kwargs)
79-
80-
def put(self, request, *args, **kwargs):
81-
return self.update(request, *args, **kwargs)
82-
83-
def delete(self, request, *args, **kwargs):
84-
return super().destroy(request, *args, **kwargs)
93+
def delete(self, request, *args, **kwargs):
94+
return super().destroy(request, *args, **kwargs)
8595

8696

8797
class TopicCreate(mixins.CreateModelMixin, generics.GenericAPIView):
8898

89-
queryset = models.Topic.objects.all()
90-
serializer_class = serializers.TopicSerializer
91-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsTopicOwner]
99+
queryset = models.Topic.objects.all()
100+
serializer_class = serializers.TopicSerializer
101+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsTopicOwner]
102+
103+
def post(self, request, *args, **kwargs):
104+
return self.create(request, *args, **kwargs)
105+
92106

93-
def post(self, request, *args, **kwargs):
94-
return self.create(request, *args, **kwargs)
107+
class TopicDetail(
108+
mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView
109+
):
110+
queryset = models.Topic.objects.all()
111+
serializer_class = serializers.TopicSerializer
112+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsTopicOwner]
95113

96-
class TopicDetail(mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView):
97-
queryset = models.Topic.objects.all()
98-
serializer_class = serializers.TopicSerializer
99-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsTopicOwner]
114+
def delete(self, request, *args, **kwargs):
115+
return super().destroy(request, *args, **kwargs)
100116

101-
def delete(self, request, *args, **kwargs):
102-
return super().destroy(request, *args, **kwargs)
103-
104-
def put(self, request, *args, **kwargs):
105-
return self.update(request, *args, **kwargs)
117+
def put(self, request, *args, **kwargs):
118+
return self.update(request, *args, **kwargs)
106119

107120

108121
class LinkCreate(mixins.CreateModelMixin, generics.GenericAPIView):
109122

110-
queryset = models.Link.objects.all()
111-
serializer_class = serializers.LinkSerializer
112-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsLinkOwner]
123+
queryset = models.Link.objects.all()
124+
serializer_class = serializers.LinkSerializer
125+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsLinkOwner]
113126

114-
def post(self, request, *args, **kwargs):
115-
return self.create(request, *args, **kwargs)
127+
def post(self, request, *args, **kwargs):
128+
return self.create(request, *args, **kwargs)
129+
130+
131+
class LinkDetail(
132+
mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView
133+
):
134+
queryset = models.Link.objects.all()
135+
serializer_class = serializers.LinkSerializer
136+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsLinkOwner]
116137

117-
class LinkDetail(mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView):
118-
queryset = models.Link.objects.all()
119-
serializer_class = serializers.LinkSerializer
120-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsLinkOwner]
138+
def delete(self, request, *args, **kwargs):
139+
return super().destroy(request, *args, **kwargs)
140+
141+
def put(self, request, *args, **kwargs):
142+
return self.update(request, *args, **kwargs)
121143

122-
def delete(self, request, *args, **kwargs):
123-
return super().destroy(request, *args, **kwargs)
124-
125-
def put(self, request, *args, **kwargs):
126-
return self.update(request, *args, **kwargs)
127144

128145
class SubTopicCreate(mixins.CreateModelMixin, generics.GenericAPIView):
129146

130-
queryset = models.SubTopic.objects.all()
131-
serializer_class = serializers.SubTopicSerializer
132-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicOwner]
147+
queryset = models.SubTopic.objects.all()
148+
serializer_class = serializers.SubTopicSerializer
149+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicOwner]
150+
151+
def post(self, request, *args, **kwargs):
152+
return self.create(request, *args, **kwargs)
133153

134154

135-
def post(self, request, *args, **kwargs):
136-
return self.create(request, *args, **kwargs)
155+
class SubTopicDetail(
156+
mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView
157+
):
158+
queryset = models.SubTopic.objects.all()
159+
serializer_class = serializers.SubTopicSerializer
160+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicOwner]
161+
162+
def delete(self, request, *args, **kwargs):
163+
return super().destroy(request, *args, **kwargs)
164+
165+
def put(self, request, *args, **kwargs):
166+
return self.update(request, *args, **kwargs)
137167

138-
class SubTopicDetail(mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView):
139-
queryset = models.SubTopic.objects.all()
140-
serializer_class = serializers.SubTopicSerializer
141-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicOwner]
142168

143-
def delete(self, request, *args, **kwargs):
144-
return super().destroy(request, *args, **kwargs)
145-
146-
def put(self, request, *args, **kwargs):
147-
return self.update(request, *args, **kwargs)
148-
149169
class SubTopicLinkCreate(mixins.CreateModelMixin, generics.GenericAPIView):
150170

151-
queryset = models.SubTopicLink.objects.all()
152-
serializer_class = serializers.SubTopicLinkSerializer
153-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicLinkOwner]
171+
queryset = models.SubTopicLink.objects.all()
172+
serializer_class = serializers.SubTopicLinkSerializer
173+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicLinkOwner]
174+
175+
def post(self, request, *args, **kwargs):
176+
return self.create(request, *args, **kwargs)
177+
154178

155-
def post(self, request, *args, **kwargs):
156-
return self.create(request, *args, **kwargs)
179+
class SubTopicLinkDetail(
180+
mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView
181+
):
182+
queryset = models.SubTopicLink.objects.all()
183+
serializer_class = serializers.SubTopicLinkSerializer
184+
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicLinkOwner]
157185

158-
class SubTopicLinkDetail(mixins.DestroyModelMixin, mixins.UpdateModelMixin, generics.GenericAPIView):
159-
queryset = models.SubTopicLink.objects.all()
160-
serializer_class = serializers.SubTopicLinkSerializer
161-
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsSubTopicLinkOwner]
186+
def delete(self, request, *args, **kwargs):
187+
return super().destroy(request, *args, **kwargs)
162188

163-
def delete(self, request, *args, **kwargs):
164-
return super().destroy(request, *args, **kwargs)
165-
166-
def put(self, request, *args, **kwargs):
167-
return self.update(request, *args, **kwargs)
189+
def put(self, request, *args, **kwargs):
190+
return self.update(request, *args, **kwargs)

0 commit comments

Comments
 (0)