2016-07-14 29 views
7

Aşağıdaki serileştiricide, iç içe geçmiş bir serializer var [ContainerSerializer] alanı ve (kapsayıcı) ContainerSerializer alanından dışlamak istiyorum ancak ContainerSerializer'da herhangi bir değişiklik istemiyorum. Bunu nasıl yapabilirim?Django rest framework serializer'dan bir alanı dışlama

class BLcontainerMergedSerializer(serializers.ModelSerializer): 
    container = ContainerSerializer() 
    class Meta: 
     model = BLcontainer 
     fields = ('field1', 'field2') 

Referans: Django REST docs

+0

Hatta aynısını yapmam gerek! –

cevap

5

başka seri hale oluşturun BLContainerSerializer demek ve orada alanları hariç

class BLcontainerMergedSerializer(serializers.ModelSerializer): 
    container = ContainerSerializer() 
    class Meta: 
     model = BLcontainer 
5

bir alanlar meta özelliği yoktur. Daha sonra bunu BLcontainerMergedSerializer'unuzda kullanın. Bu yardımcı olur umarım.

class BLContainerSerializer(serializers.ModelSerializer): 
    class Meta: 
     model = Container 
     exclude = ('field1',) 


class BLcontainerMergedSerializer(serializers.ModelSerializer): 
    container = BLContainerSerializer() 
    class Meta: 
     model = BLcontainer 
+0

bu, 'konteyner'den değil' BLcontainer 'alanlarından ekler. –

İlgili konular