@@ -20,12 +20,9 @@ def to_internal_value(self, data):
2020
2121
2222class MemberSerializer (serializers .ModelSerializer ):
23- key_skills = KeySkillsField ()
24-
2523 class Meta :
2624 model = Member
2725 fields = [
28- "key_skills" ,
2926 "useful_to_project" ,
3027 ]
3128
@@ -63,6 +60,7 @@ class UserDetailSerializer(serializers.ModelSerializer):
6360 expert = ExpertSerializer (required = False )
6461 mentor = MentorSerializer (required = False )
6562 achievements = AchievementListSerializer (required = False , many = True )
63+ key_skills = KeySkillsField (required = False )
6664
6765 class Meta :
6866 model = CustomUser
@@ -73,6 +71,7 @@ class Meta:
7371 "first_name" ,
7472 "last_name" ,
7573 "patronymic" ,
74+ "key_skills" ,
7675 "birthday" ,
7776 "speciality" ,
7877 "about_me" ,
@@ -87,6 +86,7 @@ class Meta:
8786 ]
8887
8988 def update (self , instance , validated_data ):
89+
9090 if instance .user_type == CustomUser .MEMBER :
9191 instance .member .__dict__ .update (
9292 validated_data .get ("member" , model_to_dict (instance .member ))
@@ -108,13 +108,13 @@ def update(self, instance, validated_data):
108108 )
109109 instance .mentor .save ()
110110
111- # maybe it's better to write ALLOWED_UPDATABLE_FIELDS = ["first_name", "last_name", ...]
112111 IMMUTABLE_FIELDS = ("email" , "user_type" , "is_active" , "password" )
113112 USER_TYPE_FIELDS = ("member" , "investor" , "expert" , "mentor" )
114113 RELATED_FIELDS = ("achievements" ,)
115114 for attr , value in validated_data .items ():
116115 if attr in IMMUTABLE_FIELDS + USER_TYPE_FIELDS + RELATED_FIELDS :
117116 continue
117+ print (attr , value )
118118 setattr (instance , attr , value )
119119
120120 instance .save ()
@@ -124,6 +124,7 @@ def update(self, instance, validated_data):
124124
125125class UserListSerializer (serializers .ModelSerializer ):
126126 member = MemberSerializer (required = False )
127+ key_skills = KeySkillsField (required = False )
127128
128129 def create (self , validated_data ):
129130 user = CustomUser (** validated_data )
@@ -141,6 +142,7 @@ class Meta:
141142 "first_name" ,
142143 "last_name" ,
143144 "patronymic" ,
145+ "key_skills" ,
144146 "avatar" ,
145147 "speciality" ,
146148 "birthday" ,
0 commit comments