使用以下资源类我正在创建API以列出给定用户的所有最喜欢的商家。
class FavouriteMerchantResource(ModelResource):
'''Fetch All favourite merchants associated with given user'''
user = fields.ForeignKey(UserResource, 'user', null=True, full=True)
merchant = fields.ForeignKey(MerchantResource, 'merchant', null=True, full=True)
class Meta:
queryset = FavouriteMerchant.objects.all()
resource_name = 'fm'
include_resource_uri = False
allowed_methods = ['get']
filtering = {
'user': ALL_WITH_RELATIONS
}
现在我想从API响应中排除用户详细信息,但希望使用用户名(来自用户表)字段来过滤结果。
仅供参考我已尝试添加以下排除字段,但仍会在响应中生成用户详细信息:
excludes = ['user']
答案 0 :(得分:0)
您可以覆盖dehydrate
功能并从捆绑包中删除用户。
类似的东西:
def dehydrate(self, bundle):
del bundle.data['user']
return bundle