DRF - 在ManyToMany字段中添加/删除

时间:2018-06-17 08:16:08

标签: django-rest-framework

我们说我有:

class ThingViewSet(viewsets.ModelViewSet):

    ...
    @action(methods=['patch'], detail=True)
    def append_some_items(self, request, pk=None):

        ...

    @action(methods=['delete'], detail=True)
    def remove_some_items(self, request, pk=None):

        ...

我想实现端点,以便在Thing.some_items中追加和删除项目;实现看起来像:

ddf.createOrReplaceTempView("TempItems")

然后,客户可以:

PATCH / things / 1 / add_some_items

DELETE / things / 1 / remove_some_items

指定[项目列表'请求正文中的ids]。

在DRF中构建此类端点是否有更明智的网址方案/实施?请注意,Thing可能有很多项目;因此,我不希望客户端通过指定Items ID的完整列表来修改Thing.some_items。

0 个答案:

没有答案