我有一个序列化器,其中包含URL
字段,默认情况下,如果有一个字段名为URL
然后该字段的值作为 LOCATION 添加到 HEADER 选项中,我不想这样做,并且想删除LOCATION
标题中的选项。
这是我的序列化器:-
class DemoSerializer(serializers.ModelSerializer):
class Meta:
model = Demo
fields = ('type', 'protocol', ---- 'url', 'somefield')
Now when the above serializer is used with POST/PUT/PATCH request to send data, I get this as response:-
有什么方法或方法可以删除LOCATION
标题中的选项,而不影响我的其他序列化程序和项目中的视图?
在要删除 Location 标头的视图中,您应该重写 get_success_headers 函数。
Default
def get_success_headers(self, data):
try:
return {'Location': str(data[api_settings.URL_FIELD_NAME])}
except (TypeError, KeyError):
return {}
Override
def get_success_headers(self, data):
return {}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)