11from django .forms .models import model_to_dict
22from rest_framework import serializers
33
4+ from industries .models import Industry
45from .models import CustomUser , Expert , Investor , Member , Mentor , UserAchievement
56
67
@@ -37,6 +38,11 @@ class Meta:
3738
3839
3940class ExpertSerializer (serializers .ModelSerializer ):
41+
42+ preferred_industries = serializers .ListSerializer (
43+ child = serializers .PrimaryKeyRelatedField (queryset = Industry .objects .all ())
44+ )
45+
4046 class Meta :
4147 model = Expert
4248 fields = [
@@ -46,6 +52,11 @@ class Meta:
4652
4753
4854class InvestorSerializer (serializers .ModelSerializer ):
55+
56+ preferred_industries = serializers .ListSerializer (
57+ child = serializers .PrimaryKeyRelatedField (queryset = Industry .objects .all ())
58+ )
59+
4960 class Meta :
5061 model = Investor
5162 fields = [
@@ -96,11 +107,17 @@ def update(self, instance, validated_data):
96107 instance .investor .__dict__ .update (
97108 validated_data .get ("investor" , model_to_dict (instance .investor ))
98109 )
110+ instance .investor .preferred_industries .set (
111+ validated_data .get ("investor" , {}).get ("preferred_industries" , [])
112+ )
99113 instance .investor .save ()
100114 elif instance .user_type == CustomUser .EXPERT :
101115 instance .expert .__dict__ .update (
102116 validated_data .get ("expert" , model_to_dict (instance .expert ))
103117 )
118+ instance .expert .preferred_industries .set (
119+ validated_data .get ("expert" , {}).get ("preferred_industries" , [])
120+ )
104121 instance .expert .save ()
105122 elif instance .user_type == CustomUser .MENTOR :
106123 instance .mentor .__dict__ .update (
0 commit comments