如何判断传入的请求是否为数组? 现在我正在采用这种方法
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if isinstance(request.data, list):
serializer = self.get_serializer(many=True, data=request.data)
最好的方法是什么?
最佳答案
简化此操作的一种方法是:
def create(self, request, *args, **kwargs):
is_many = isinstance(request.data, list)
serializer = self.get_serializer(many=is_many, data=request.data)
在此示例中,我假设通过在第一个函数调用中不传递 many
,它默认为 False
。
由于您始终会运行测试 isinstance
,因此不妨先调用它并将其用作 many
参数的值。
这样您只需调用 self.get_serializer
一次。
关于python - Django 是否请求数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41734335/