我想在视图集中链接“/ tags / browse”,但我认为装饰器强制“/ tags /:id / browse”.这是我的观点:
class TagViewSet(viewsets.ModelViewSet):
queryset = Tag.objects.all()
serializer_class = TagSerializer
@link(permission_classes=[])
def browse(self, request, pk=None):
...
return Response(data)
我想有标签的通用CRUD API,但我还添加了一个返回一些聚合数据的特殊浏览.当前的@link有效,但我必须转到“/ tags / 1 / browse”而不是通用的“/ tags / browse”.在这里有一种直接的方式来做后者吗?
(我可以创建一个单独的路径,但如果可能的话,更愿意将所有内容封装在此视图集中)
谢谢!
最佳答案 截至2014年6月,目前尚未得到支持,但它已合并到(长期运行的)2.4分支中.
看看这两个……
https://github.com/tomchristie/django-rest-framework/pull/886
https://github.com/tomchristie/django-rest-framework/pull/1047
您可以通过复制那些PR中的工作(或者通过针对2.4分支而不是从最新的PyPI版本运行)来将类似的东西拉入项目中