【发布时间】:2016-10-25 10:21:11
【问题描述】:
我正在使用 Django Rest 框架开发 API,我想从序列化程序中动态删除字段。问题是我需要根据另一个字段的值删除它们。我怎么能那样做? 我有一个像这样的序列化程序:
class DynamicSerliazer(serializers.ModelSerializer):
type = serializers.SerializerMethodField()
url = serializers.SerializerMethodField()
title = serializers.SerializerMethodField()
elements = serializers.SerializerMethodField()
def __init__(self, *args, **kwargs):
super(DynamicSerliazer, self).__init__(*args, **kwargs)
if self.fields and is_mobile_platform(self.context.get('request', None)) and "url" in self.fields:
self.fields.pop("url")
如您所见,我已经删除了“url”字段,具体取决于请求是否来自移动平台。但是,我想根据“类型”值删除“元素”字段。我该怎么做?
提前致谢
【问题讨论】:
标签: django-rest-framework django-serializer