3
3
from rest_framework import viewsets
4
4
from rest_framework .decorators import api_view
5
5
from rest_framework .response import Response
6
+ from rest_framework .schemas .openapi import AutoSchema
6
7
7
8
from api import models
8
9
from api import serializers
9
10
from api import filters
10
- #from api.schema_generator import CustomSchema
11
+
11
12
12
13
13
14
class ManifestViewSet (viewsets .ReadOnlyModelViewSet ):
@@ -95,6 +96,7 @@ class DocumentViewSet(viewsets.ReadOnlyModelViewSet):
95
96
list: API endpoint for returning a list of documents.
96
97
retrieve: API endpoint for returning a particular document.
97
98
"""
99
+ schema = AutoSchema (operation_id_base = 'V1Document' )
98
100
queryset = models .Document .objects .all ().order_by ("pk" )
99
101
serializer_class = serializers .DocumentSerializer
100
102
search_fields = ['title' , 'desc' ]
@@ -111,6 +113,7 @@ class SpellViewSet(viewsets.ReadOnlyModelViewSet):
111
113
list: API endpoint for returning a list of spells.
112
114
retrieve: API endpoint for returning a particular spell.
113
115
"""
116
+ schema = AutoSchema (operation_id_base = 'V1Spell' )
114
117
queryset = models .Spell .objects .all ().order_by ("pk" )
115
118
filterset_class = filters .SpellFilter
116
119
serializer_class = serializers .SpellSerializer
@@ -137,6 +140,7 @@ class SpellListViewSet(viewsets.ReadOnlyModelViewSet):
137
140
list: API endpoint for returning a list of spell lists.
138
141
retrieve: API endpoint for returning a particular spell list.
139
142
"""
143
+ schema = AutoSchema (operation_id_base = 'V1SpellList' )
140
144
queryset = models .SpellList .objects .all ().order_by ("pk" )
141
145
serializer_class = serializers .SpellListSerializer
142
146
filterset_class = filters .SpellListFilter
@@ -148,6 +152,7 @@ class MonsterViewSet(viewsets.ReadOnlyModelViewSet):
148
152
list: API endpoint for returning a list of monsters.
149
153
retrieve: API endpoint for returning a particular monster.
150
154
"""
155
+ schema = AutoSchema (operation_id_base = 'V1Monster' )
151
156
queryset = models .Monster .objects .all ().order_by ("pk" )
152
157
filterset_class = filters .MonsterFilter
153
158
@@ -159,6 +164,7 @@ class BackgroundViewSet(viewsets.ReadOnlyModelViewSet):
159
164
list: API endpoint for returning a list of backgrounds.
160
165
retrieve: API endpoint for returning a particular background.
161
166
"""
167
+ schema = AutoSchema (operation_id_base = 'V1Background' )
162
168
queryset = models .Background .objects .all ().order_by ("pk" )
163
169
serializer_class = serializers .BackgroundSerializer
164
170
ordering_fields = '__all__'
@@ -172,6 +178,7 @@ class PlaneViewSet(viewsets.ReadOnlyModelViewSet):
172
178
list: API endpoint for returning a list of planes.
173
179
retrieve: API endpoint for returning a particular plane.
174
180
"""
181
+ schema = AutoSchema (operation_id_base = 'V1Plane' )
175
182
queryset = models .Plane .objects .all ().order_by ("pk" )
176
183
serializer_class = serializers .PlaneSerializer
177
184
filterset_class = filters .PlaneFilter
@@ -183,6 +190,7 @@ class SectionViewSet(viewsets.ReadOnlyModelViewSet):
183
190
list: API endpoint for returning a list of sections.
184
191
retrieve: API endpoint for returning a particular section.
185
192
"""
193
+ schema = AutoSchema (operation_id_base = 'V1Section' )
186
194
queryset = models .Section .objects .all ().order_by ("pk" )
187
195
serializer_class = serializers .SectionSerializer
188
196
ordering_fields = '__all__'
@@ -196,6 +204,7 @@ class FeatViewSet(viewsets.ReadOnlyModelViewSet):
196
204
list: API endpoint for returning a list of feats.
197
205
retrieve: API endpoint for returning a particular feat.
198
206
"""
207
+ schema = AutoSchema (operation_id_base = 'V1Feat' )
199
208
queryset = models .Feat .objects .all ().order_by ("pk" )
200
209
serializer_class = serializers .FeatSerializer
201
210
filterset_class = filters .FeatFilter
@@ -207,6 +216,7 @@ class ConditionViewSet(viewsets.ReadOnlyModelViewSet):
207
216
list: API endpoint for returning a list of conditions.
208
217
retrieve: API endpoint for returning a particular condition.
209
218
"""
219
+ schema = AutoSchema (operation_id_base = 'V1Condition' )
210
220
queryset = models .Condition .objects .all ().order_by ("pk" )
211
221
serializer_class = serializers .ConditionSerializer
212
222
search_fields = ['name' , 'desc' ]
@@ -218,6 +228,7 @@ class RaceViewSet(viewsets.ReadOnlyModelViewSet):
218
228
list: API endpoint for returning a list of races.
219
229
retrieve: API endpoint for returning a particular race.
220
230
"""
231
+ schema = AutoSchema (operation_id_base = 'V1Race' )
221
232
queryset = models .Race .objects .all ().order_by ("pk" )
222
233
serializer_class = serializers .RaceSerializer
223
234
filterset_class = filters .RaceFilter
@@ -230,6 +241,7 @@ class SubraceViewSet(viewsets.ReadOnlyModelViewSet):
230
241
list: API endpoint that allows viewing of Subraces.
231
242
retrieve: API endpoint for returning a particular subrace.
232
243
"""
244
+ schema = AutoSchema (operation_id_base = 'V1Subrace' )
233
245
queryset = models .Subrace .objects .all ().order_by ("pk" )
234
246
serializer_class = serializers .SubraceSerializer
235
247
search_fields = ['name' , 'desc' ]
@@ -244,6 +256,7 @@ class CharClassViewSet(viewsets.ReadOnlyModelViewSet):
244
256
list: API endpoint for returning a list of classes and archetypes.
245
257
retrieve: API endpoint for returning a particular class or archetype.
246
258
"""
259
+ schema = AutoSchema (operation_id_base = 'V1Class' )
247
260
queryset = models .CharClass .objects .all ().order_by ("pk" )
248
261
serializer_class = serializers .CharClassSerializer
249
262
filterset_class = filters .CharClassFilter
@@ -256,6 +269,7 @@ class ArchetypeViewSet(viewsets.ReadOnlyModelViewSet):
256
269
list: API endpoint that allows viewing of Archetypes.
257
270
retrieve: API endpoint for returning a particular archetype.
258
271
"""
272
+ schema = AutoSchema (operation_id_base = 'V1Archetype' )
259
273
queryset = models .Archetype .objects .all ().order_by ("pk" )
260
274
serializer_class = serializers .ArchetypeSerializer
261
275
search_fields = ['name' , 'desc' ]
@@ -270,6 +284,7 @@ class MagicItemViewSet(viewsets.ReadOnlyModelViewSet):
270
284
list: API endpoint for returning a list of magic items.
271
285
retrieve: API endpoint for returning a particular magic item.
272
286
"""
287
+ schema = AutoSchema (operation_id_base = 'V1MagicItem' )
273
288
queryset = models .MagicItem .objects .all ().order_by ("pk" )
274
289
serializer_class = serializers .MagicItemSerializer
275
290
filterset_class = filters .MagicItemFilter
@@ -281,6 +296,7 @@ class WeaponViewSet(viewsets.ReadOnlyModelViewSet):
281
296
list: API endpoint for returning a list of weapons.
282
297
retrieve: API endpoint for returning a particular weapon.
283
298
"""
299
+ schema = AutoSchema (operation_id_base = 'V1Weapon' )
284
300
queryset = models .Weapon .objects .all ().order_by ("pk" )
285
301
serializer_class = serializers .WeaponSerializer
286
302
filterset_class = filters .WeaponFilter
@@ -292,6 +308,7 @@ class ArmorViewSet(viewsets.ReadOnlyModelViewSet):
292
308
list: API endpoint for returning a list of armor.
293
309
retrieve: API endpoint for returning a particular armor.
294
310
"""
311
+ schema = AutoSchema (operation_id_base = 'V1Armor' )
295
312
queryset = models .Armor .objects .all ().order_by ("pk" )
296
313
serializer_class = serializers .ArmorSerializer
297
314
filterset_class = filters .ArmorFilter
0 commit comments