【问题标题】:How to post request for multiple strings in django rest framework?如何在 django rest 框架中发布多个字符串的请求?
【发布时间】:2019-07-05 23:43:38
【问题描述】:
我正在编写一个视图集,它接收来自用户的字符串值数组并根据发布请求验证表。
我不知道如何从用户那里获取 request.POST 中的数组并使用 Postman 中的其余 API。
比如:
class newView(viewsets.ModelViewset):
authentication_classes = (BasicAuthentication)
serializer_class = NewSerializer
def create(self,request,*args,**kwargs):
stringslist = ???
# request.POST.????
# Work with stringslist
另外,如何在 Postman 中检查这个?
【问题讨论】:
标签:
django
django-rest-framework
postman
django-rest-viewsets
【解决方案1】:
class StringListField(serializers.ListField):
child = serializers.CharField()
class NewSerializer(serializers.Serializer):
string_list = StringListField()
定义字符串列表字段并在序列化程序中添加字符串列表
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
string_list = serializer.validated_data.get('string_list', [])
# you can get string list here
self.perform_create(serializer)
headers = self.get_success_headers(serializer.data)
return Response(serializer.data, status=status.HTTP_201_CREATED,
headers=headers)