File tree 1 file changed +27
-19
lines changed
1 file changed +27
-19
lines changed Original file line number Diff line number Diff line change 11
11
# from .tasks import train_model
12
12
13
13
14
+
15
+
16
+ class UserSerializer (serializers .ModelSerializer ):
17
+ class Meta :
18
+ model = OsmUser
19
+ fields = [
20
+ "osm_id" ,
21
+ "username" ,
22
+ # "is_superuser",
23
+ # "is_active",
24
+ # "is_staff",
25
+ # "date_joined",
26
+ # "email",
27
+ # "img_url",
28
+ # "user_permissions",
29
+ ]
30
+
31
+ read_only_fields = ["osm_id" , "username" ]
32
+
33
+
14
34
class DatasetSerializer (serializers .ModelSerializer ):
15
35
models_count = serializers .SerializerMethodField ()
16
36
@@ -41,25 +61,13 @@ def create(self, validated_data):
41
61
def get_models_count (self , obj ):
42
62
return Model .objects .filter (dataset = obj ).count ()
43
63
44
-
45
- class UserSerializer (serializers .ModelSerializer ):
46
- class Meta :
47
- model = OsmUser
48
- fields = [
49
- "osm_id" ,
50
- "username" ,
51
- # "is_superuser",
52
- # "is_active",
53
- # "is_staff",
54
- # "date_joined",
55
- # "email",
56
- # "img_url",
57
- # "user_permissions",
58
- ]
59
-
60
- read_only_fields = ["osm_id" , "username" ]
61
-
62
-
64
+ def to_representation (self , instance ):
65
+ # get default
66
+ ret = super ().to_representation (instance )
67
+ # For GET requests, replace the user field with detailed UserSerializer data
68
+ if self .context .get ('request' ) and self .context ['request' ].method == 'GET' :
69
+ ret ['user' ] = UserSerializer (instance .user ).data
70
+ return ret
63
71
class ModelSerializer (serializers .ModelSerializer ):
64
72
user = UserSerializer (read_only = True )
65
73
accuracy = serializers .SerializerMethodField ()
You can’t perform that action at this time.
0 commit comments