Django Rest框架:使用ModelViewSet插入列表
在线文档不是很清楚。Django Rest框架:使用ModelViewSet插入列表,django,django-rest-framework,Django,Django Rest Framework,在线文档不是很清楚。ModelViewSet的默认POST方法应该允许您插入模型列表,但实际上它只允许插入单个模型。例如,请参考中所述的代码,如何发布用户列表 class UserViewSet(viewsets.ModelViewSet): """ A viewset for viewing and editing user instances. """ serializer_class = UserSerializer queryset = User.
ModelViewSet
的默认POST方法应该允许您插入模型列表,但实际上它只允许插入单个模型。例如,请参考中所述的代码,如何发布用户列表
class UserViewSet(viewsets.ModelViewSet):
"""
A viewset for viewing and editing user instances.
"""
serializer_class = UserSerializer
queryset = User.objects.all()
因为您可以先使用serializer_类,然后再使用queryset,所以首先我们需要导入User,然后应用serializer类来再次应用插入 用这个
文档非常清楚创建的作用 引述: ModelViewSet类继承自GenericAPIView,通过混合各种mixin类的行为,包括各种操作的实现。 ModelViewSet类提供的操作有.list()、.retrieve()、.create()、.update()、.partial_update()和.destroy() 因此,关于: 提供.create(request,*args,**kwargs)方法,该方法实现创建和保存新模型实例
因此,如果您想创建一批项目,您必须重写
create
方法并自己编写。您说的“应该”是什么意思?这是从哪里来的?它被称为ViewSet,与ViewSet相对。我看不出有什么关联。之所以叫它,是因为它是一组视图,处理列表、详细信息、创建和更新。谢谢。因为它被称为ModelViewSet,所以我假设它在默认情况下处理了列表创建。顺便说一句,在ModelViewSet中,如何调用create()
,我对该框架非常陌生。您应该花一些时间运行完整的教程一次,以了解有关DRF的概念和想法。
class UserViewSet(viewsets.ModelViewSet):
"""
A viewset for viewing and editing user instances.
"""
queryset = User.objects.all()
serializer_class = UserSerializer