【发布时间】:2016-05-11 12:50:44
【问题描述】:
我正在使用 DRF ModelViewSet 并尝试添加新端点以通过帖子上传一些文件。
我的看法:
class TreeViewSet(viewsets.ModelViewSet):
permission_classes = [IsAuthenticated, TokenHasReadWriteScope]
lookup_field = 'id'
queryset = Tree.nodes
def get_serializer_class(self):
return partial(TreeSerializer, user=self.request.user.userprofile.id)
def get_object(self):
qset = copy.deepcopy(self.get_queryset())
try:
return qset.get(id=self.kwargs[self.lookup_field])
except:
raise Http404("No Person matches the given query.")
@detail_route(
methods=['post'],
url_path='gedcom')
def upload_gedcom(self, request, id=None):
print request.data
端点是:
..../tree/{pk}/gedcom/ (upload_gedcom)
- 问题:print request.data 返回空的 QueryDict。
我已经尝试过这个解决方案: Django Rest Framework: empty request.data 并没有为我工作。
为了测试我正在使用邮递员: here is the Postman screenshot
- 在实现此端点之前,我在其他视图中有其他端点解决了该方法(upload_gedcom),但我使用了 list_router 而不是详细的。这种方式可行,但在概念上是错误的。
【问题讨论】:
标签: django api rest frameworks