【发布时间】:2019-01-02 08:21:45
【问题描述】:
我想使用 Django Rest Framework 添加多对多关系。实现这一目标的最佳方法是什么?
在 Django shell 级别上,我想做的是说ModelA.model_bs.add(model_b)。如何做到这一点?
我使用generic.CreateAPIView 实现了这一点,并像这样覆盖perform_create() 方法:
def perform_create(self, serializer):
model_a = self.get_object()
model_b = ModelB.objects.get(uuid=serializer.validated_data["model_b"]["uuid"])
model_a.modelbs.add(model_b)
这感觉很奇怪,因为serializer.save() 不再以这种方式被调用。这是一个好方法吗?如果没有,我应该如何实现这一目标?我在文档中找不到任何关于此的内容。
【问题讨论】:
标签: django django-models django-rest-framework many-to-many