相关疑难解决方法(0)

嵌套关系序列化器中的Django Rest Framework模型Id字段

我使用Django Rest Framework,我有以下两个序列化器:

class ServiceSerializer(serializers.ModelSerializer):
    id = serializers.ReadOnlyField()

    class Meta:
        model = ServiceType
        fields = ('id', 'serviceName', 'servicePrice')


class CompanyShortListSerializer(serializers.ModelSerializer):

     services = ServiceSerializer(many=True)

     class Meta:
         model = Company
         fields = ( 'id','name','address','cost_per_patient','cost_per_month','renting_fee','services')
Run Code Online (Sandbox Code Playgroud)

ServiceType模型如下所示:

class ServiceType(models.Model):
     serviceName = EncryptedCharField(max_length=100, blank=True, verbose_name = "Typ us?ugi")
     servicePrice = EncryptedFloatField(null=True, blank=True, verbose_name = "Cena us?ugi", validators = [MinValueValidator(0.1), MaxValueValidator(999)])
     company = models.ForeignKey(Company, related_name = 'services')
Run Code Online (Sandbox Code Playgroud)

我想通过更改相关服务来更新现有实例(例如删除其中一些).要做到这一点,我这样做:

def update(self, instance, validated_data):
    # Updates an exisitng Company with several services 
    instance.name = validated_data['name']
    instance.address = validated_data['address'] …
Run Code Online (Sandbox Code Playgroud)

python django rest django-rest-framework

16
推荐指数
2
解决办法
7402
查看次数

标签 统计

django ×1

django-rest-framework ×1

python ×1

rest ×1