gpt4 book ai didi

django-rest-framework - 如何在 Django REST 框架中的自定义序列化程序字段中访问请求对象?

转载 作者:行者123 更新时间:2023-12-04 14:16:47 25 4
gpt4 key购买 nike

考虑:

class CustomSerializerField(serializers.Field):

def to_representation(self, obj):
return obj

def to_internal_value(self, data):
# How can I access the request object here?
return {}
现在是 ModelSerializer
class SomeModelSerializer(serializers.ModelSerializer):
some_field = CustomerSerializerField()

class Meta:
model = SomeModel
fields = ('__all__', )
我试过了
self.request.user

最佳答案

DRF 正在通过 外部上下文 在执行期间到嵌套级别。在您的情况下, SomeModelSerializer 类将其获取的所有上下文(可能是从 View 中)传递给 它的字段和“嵌套序列化程序”
访问 request 中的变量CustomerSerializerField ,只需使用,

user = self.context['request'].user
.

关于django-rest-framework - 如何在 Django REST 框架中的自定义序列化程序字段中访问请求对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59430930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com