示例#1
0
class TalentSimpleSerializer(serializers.ModelSerializer):
    user = GeneralUserSerializer(many=False, read_only=True)
    talent_pictures = TalentPictureSerializer(many=True, read_only=True)
    talent_position_types = TalentPositionTypeSerializer(many=True,
                                                         read_only=True)
    talent_position_sub_types = GeneralTalentPositionSubTypeSerializer(
        many=True, read_only=True)
    talent_skills = TalentSkillSerializer(many=True, read_only=True)
    talent_sub_skills = GeneralTalentSubSkillSerializer(many=True,
                                                        read_only=True)
    talent_ratings = TalentRatingDetailByTalentSerializer(many=True,
                                                          read_only=True)
    average_rating = serializers.FloatField(source='get_average_rating',
                                            read_only=True)
    profile_status = serializers.JSONField(source='get_profile_status',
                                           read_only=True)

    class Meta:
        model = Talent
        fields = ('id', 'user', 'sex', 'talent_position_types',
                  'talent_position_sub_types', 'talent_skills',
                  'talent_sub_skills', 'talent_pictures', 'talent_ratings',
                  'average_rating', 'head_line', 'bio', 'tid', 'approved',
                  'approved_date', 'approved_by', 'locked_dance_combination',
                  'created', 'profile_status')
示例#2
0
class TalentGeneralSerializer(serializers.ModelSerializer):
    user = GeneralUserSerializer(many=False, read_only=True)
    talent_resume = TalentResumeSerializer(many=True, read_only=True)
    talent_pictures = TalentPictureSerializer(many=True, read_only=True)
    talent_position_types = TalentPositionTypeSerializer(many=True,
                                                         read_only=True)
    talent_position_sub_types = GeneralTalentPositionSubTypeSerializer(
        many=True, read_only=True)
    talent_skills = TalentSkillSerializer(many=True, read_only=True)
    talent_sub_skills = GeneralTalentSubSkillSerializer(many=True,
                                                        read_only=True)
    talent_visas = TalentVisaSerializer(many=True, read_only=True)
    talent_languages = TalentLanguageSerializer(many=True, read_only=True)
    talent_medicals = TalentMedicalSerializer(many=True, read_only=True)
    talent_availabilities = TalentAvailabilitySerializerWithoutTalentID(
        many=True, read_only=True)
    talent_ratings = TalentRatingDetailByTalentSerializer(many=True,
                                                          read_only=True)
    average_rating = serializers.FloatField(source='get_average_rating',
                                            read_only=True)
    profile_status = serializers.JSONField(source='get_profile_status',
                                           read_only=True)
    talent_availabilities_last_update = serializers.DateTimeField(
        source='get_talent_availabilities_last_update', read_only=True)

    class Meta:
        model = Talent
        fields = ('id', 'user', 'sex', 'talent_position_types',
                  'talent_position_sub_types', 'talent_skills',
                  'talent_sub_skills', 'phone_number', 'mailing_addresse1',
                  'mailing_addresse2', 'mailing_addresse3',
                  'mailing_addresse4', 'mailing_addresse5',
                  'mailing_addresse6', 'birthday', 'emergency_first_name',
                  'emergency_last_name', 'emergency_email', 'emergency_phone',
                  'emergency_relationship', 'nationality', 'citizenship',
                  'passport_expiration_date', 'passport_number',
                  'country_of_current_residence', 'have_green_card',
                  'green_card_expiration_date', 'visa_type', 'expiration_date',
                  'height', 'weight', 'bmi', 'age_range', 'head_line', 'bio',
                  'talent_visas', 'talent_languages', 'talent_pictures',
                  'talent_resume', 'talent_medicals', 'talent_availabilities',
                  'talent_availabilities_last_update', 'talent_ratings',
                  'average_rating', 'worked_cruise_ship', 'tid',
                  'approved_date', 'approved_by', 'locked_dance_combination',
                  'created', 'profile_status')