from . import models from rest_framework import serializers from inventory import models as inventory_models class CarVINSerializer(serializers.ModelSerializer): class Meta: model = models.CarVIN fields = ["vin"] def create(self, validated_data): vin = validated_data.pop("vin") return models.CarVIN.objects.create(vin=vin, **validated_data) class CarMakeSerializer(serializers.ModelSerializer): car_models = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="carmodel_set" ) class Meta: model = inventory_models.CarMake fields = "__all__" class CarModelSerializer(serializers.ModelSerializer): car_series = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="carserie_set" ) class Meta: model = inventory_models.CarModel fields = "__all__" class CarSerieSerializer(serializers.ModelSerializer): car_trims = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="cartrim_set" ) class Meta: model = inventory_models.CarSerie fields = "__all__" class CarTrimSerializer(serializers.ModelSerializer): car_equipments = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="carequipment_set" ) car_specification_values = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="carspecificationvalue_set" ) class Meta: model = inventory_models.CarTrim fields = "__all__" class CarEquipmentSerializer(serializers.ModelSerializer): car_option_values = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="caroptionvalue_set" ) class Meta: model = inventory_models.CarEquipment fields = "__all__" class CarSpecificationSerializer(serializers.ModelSerializer): child_specifications = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="carspecification_set" ) class Meta: model = inventory_models.CarSpecification fields = "__all__" class CarSpecificationValueSerializer(serializers.ModelSerializer): class Meta: model = inventory_models.CarSpecificationValue fields = "__all__" class CarOptionSerializer(serializers.ModelSerializer): child_options = serializers.PrimaryKeyRelatedField( many=True, read_only=True, source="caroption_set" ) class Meta: model = inventory_models.CarOption fields = "__all__" class CarOptionValueSerializer(serializers.ModelSerializer): class Meta: model = inventory_models.CarOptionValue fields = "__all__"