在Django中调用另一个类视图中的类视图
看起来这个问题和之前的一个问题重复了,链接在这里:one。不过我还是想说一下:我有一个叫 JobCreateViewV1
的视图类,它以一种方式处理模型。升级后,我创建了一个新的视图类 JobCreateViewV2
,它在第一次调用时向另一个模型添加了一个条目。
我想知道,最好的方法是什么,能把第一个类的响应结果获取到,然后传递给第二个类?
这是我的类:
JobCreateView
class JobCreateView(AuthenticatedView, generics.GenericAPIView):
#some seralizer
serializer_class = JobSerializerForUser
def post(self, request):
#....yada yada yada...
job='model is here'
return Response(status=status.HTTP_201_CREATED, data=self.serializer_class(job, many=False).data)
还有 JobCreateViewV2
class JobCreateViewV2(AuthenticatedView, generics.ListAPIView):
serializer_class = ResponsibleTechnicianSerializer
def post(self, request):
JobCreateViewV1Response = JobCreateViewV1.post(self, request)
# ...yada yadayada...
#and here JobCreateViewV1Response equals to {}
旧的链接工作得很好,但当我调用 V2 的时候,来自 V1 的响应数据部分却是 {}
。这可能是因为我以不正确的方式调用了 JobCreateView
,导致序列化器没有正常工作吗?
我尝试过使用 ShowAppsView.as_view()(self.request)
的方法,但似乎这不是我需要的。
相关问题:
- 暂无相关问题
1 个回答
0
OldViewClass.post(self, request)
这个方法可以正常工作,但我的问题是,旧的类继承了新的类的序列化器,所以旧的序列化器应该明确地传递给旧的类。