自定义函数,用于在DRF modelViewSet上执行创建和更新

Roe*_*oel 2 python django python-2.7 django-rest-framework

您好,我想在一个modelviewset需要在单个帖子请求中执行保存和更新逻辑的自定义方法.

这是我的 breeding.viewsets.py

class BreedingViewSet(viewsets.ModelViewSet):
    queryset = Breeding.objects.all()
    serializer_class = BreedingSerializer
Run Code Online (Sandbox Code Playgroud)

由于上述方法具有更高的抽象级别并且实际上提供或执行自动CRUD功能.

现在问题是我没有任何控制多个查询,如保存对象和更新单个帖子请求中的另一个对象.

例如

def save_and_update(self, request):
     // do save an object here.
     // do update an object here.
Run Code Online (Sandbox Code Playgroud)

我们怎样才能实现如此强大的功能?我错过了什么吗?我找到了这个文档,但我不知道如何实现给定的指令.

UPDATE

这就是我正在寻找的如何使用Django Rest Framework创建多个模型实例?

但答案只能save是同一模型的单个帖子请求中的多个实例.但我希望我们可以在单一功能中对不同的模型执行查询.

Mad*_*bat 5

好吧,从评论中看,您希望在创建育种模型时更新一些不相关的模型.这应该很容易.

class BreedingViewSet(viewsets.ModelViewSet):
    queryset = Breeding.objects.all()
    serializer_class = BreedingSerializer

    def create(self, request):
        # do your thing here
        return super().create(request)