根据:https://www.django-rest-framework.org/api-guide/serializers/#including-extra-context
我可以写:
serializer = AccountSerializer(account, context={'request': request})
然后serializer.data
将看起来像:
# {'id': 6, 'owner': 'denvercoder9', 'created': datetime.datetime(2013, 2, 12, 09, 44, 56, 678870), 'details': 'http://example.com/accounts/6/details'}
但它没有说明我将如何实施它。我的意思是,它必须基于对rest_framework.reverse
的调用,有点像在这个示例中:
class CompleteTaskModelSerializer(rest_serializers.ModelSerializer):
resultLocation = rest_serializers.SerializerMethodField()
class Meta:
model = TaskModel
fields = ('id', 'resultLocation')
def get_resultLocation(self, obj):
return reverse('model', obj.model, request=request)
但它不会承认在我的方法get_resultLocation
中有任何东西被称为request
。这个魔法应该如何工作
在同一份文件中,它还说:
所以我猜示例类可以更改为这样工作
相关问题 更多 >
编程相关推荐