我正在尝试根据不同的主机请求向 django 服务器添加其他功能。
为此,我重写了 ModelViewSet 函数,并考虑在这些函数中添加功能。
我看到的是,当在检索和列表(GET 请求)上设置断点时,调试器停止了。但是当试图中断创建或更新(POST 请求)时,调试器并没有中断。
如何解决这个问题?
另一个细节(这实际上是问题的答案)是我使用管理界面来执行创建和更新(与我使用 REST 框架的检索和列表不同)。
class GraphViewSet(ModelViewSet):
queryset = Graph.objects.all()
serializer_class = GraphSerializer
def create(self, request, *args, **kwargs):
response = super(ModelViewSet, self).create(request, args, kwargs)
return response
def retrieve(self, request, *args, **kwargs):
response = super(ModelViewSet, self).retrieve(request, args, kwargs)
return response
def update(self, request, *args, **kwargs):
response = super(ModelViewSet, self).update(request, args, kwargs)
return response
def partial_update(self, request, *args, **kwargs):
response = super(ModelViewSet, self).partial_update(request, args, kwargs)
return response
def destroy(self, request, *args, **kwargs):
response = super(ModelViewSet, self).destroy(request, args, kwargs)
return response
def list(self, request, *args, **kwargs):
response = super(ModelViewSet, self).list(request, args, kwargs)
return response
def post(self, request, *args, **kwargs):
response = super(ModelViewSet, self).post(request, args, kwargs)
return response
Python 3.6.3 Django 1.11.7 djangorestframework 9.0.1
还要感谢任何其他可能的解决方案,用于在服务器端向不同的客户端请求添加功能。