【发布时间】:2022-01-18 07:37:21
【问题描述】:
有没有办法修改 DRF 序列化程序解析传入请求负载的方式?
我试图让客户端发送一个逗号分隔的列表作为查询参数,但在序列化程序中接收它作为一个列表,但 DRF 一直在抱怨。现在我手动拦截视图中的请求并手动解析该字段,然后将其传递给序列化程序,这对我来说似乎并不优雅。
我现在在做什么
class ExampleSerializer(...):
list_field = serialzers.ListField(child=serializers.Integerfield(...))
# more fields
def view(request):
payload = request.GET
payload["list_field"] = str(payload.get("list_field", "")).split(",")
serializer = ExampleSerializer(data=payload)
我更喜欢什么(使用与上面相同的序列化程序)
def view(request):
serializer = ExampleSerializer(data=request.GET)
【问题讨论】:
标签: python django django-rest-framework