@@ -115,9 +115,6 @@ class BuildSerializer(FlexFieldsModelSerializer):
115
115
state = BuildStateSerializer (source = '*' )
116
116
_links = BuildLinksSerializer (source = '*' )
117
117
118
- expandable_fields = {
119
- 'config' : (BuildConfigSerializer , {'source' : 'config' })
120
- }
121
118
122
119
class Meta :
123
120
model = Build
@@ -135,6 +132,10 @@ class Meta:
135
132
'_links' ,
136
133
]
137
134
135
+ expandable_fields = {
136
+ 'config' : (BuildConfigSerializer , {'source' : 'config' })
137
+ }
138
+
138
139
def get_finished (self , obj ):
139
140
if obj .date and obj .length :
140
141
return obj .date + datetime .timedelta (seconds = obj .length )
@@ -210,10 +211,6 @@ class VersionSerializer(FlexFieldsModelSerializer):
210
211
urls = VersionURLsSerializer (source = '*' )
211
212
_links = VersionLinksSerializer (source = '*' )
212
213
213
- expandable_fields = {
214
- 'last_build' : (BuildSerializer , {'source' : 'last_build' })
215
- }
216
-
217
214
class Meta :
218
215
model = Version
219
216
fields = [
@@ -231,6 +228,12 @@ class Meta:
231
228
'_links' ,
232
229
]
233
230
231
+ expandable_fields = {
232
+ 'last_build' : (
233
+ BuildSerializer , {'source' : 'last_build' }
234
+ )
235
+ }
236
+
234
237
def get_downloads (self , obj ):
235
238
downloads = obj .get_downloads ()
236
239
data = {}
@@ -438,17 +441,6 @@ class ProjectSerializer(FlexFieldsModelSerializer):
438
441
created = serializers .DateTimeField (source = 'pub_date' )
439
442
modified = serializers .DateTimeField (source = 'modified_date' )
440
443
441
- expandable_fields = {
442
- 'active_versions' : (
443
- VersionSerializer ,
444
- {
445
- # NOTE: this has to be a Model method, can't be a
446
- # ``SerializerMethodField`` as far as I know
447
- 'source' : 'active_versions' ,
448
- 'many' : True ,
449
- }
450
- )
451
- }
452
444
453
445
class Meta :
454
446
model = Project
@@ -479,6 +471,17 @@ class Meta:
479
471
'_links' ,
480
472
]
481
473
474
+ expandable_fields = {
475
+ 'active_versions' : (VersionSerializer ,
476
+ {
477
+ # NOTE: this has to be a Model method, can't be a
478
+ # ``SerializerMethodField`` as far as I know
479
+ 'source' : 'active_versions' ,
480
+ 'many' : True ,
481
+ }
482
+ )
483
+ }
484
+
482
485
def get_homepage (self , obj ):
483
486
# Overridden only to return ``None`` when the project_url is ``''``
484
487
return obj .project_url or None
0 commit comments