我有使用具有标准和定制的路线Django的REST框架一个视图集。 各条路线的串行器是不同的。
例:
class UserViewSet(ViewSet):
model = User
serializer_class = UserSerializer
@decorators.detail_route(methods=['put'])
def change_password(self, request, pk, *args, **kwargs):
serializer = UserChangePasswordSerializer(data=request.data)
...
@decorators.detail_route(methods=['put'])
def update_prefs(self, request, *args, **kwargs):
serializer = UserPreferencesSerializer(data=request.data)
...
我所拥有的一切工作,这样我可以执行标准的GET,POST,PUT,删除用户对象和两个额外的工作路线上的行动。 但是,我想不出如何使用时,使HTML表单自定义路线显示BrowsableAPIRenderer
。 这将是非常方便的为开发者能够看到的形式展现,预计上述put方法的领域,例如。
我尝试添加了两条路线get方法,但这是无意义的为第一个。 无论如何,我没有看到显示正确的序列化,当我去的URL路径,我看到在指定的串行serializer_class
。
关于我还没有尝试过压倒一切的唯一的事情get_serializer_class()
因为这涉及到把每一个串行的知识在一个地方每一个路由,而不是能够指定路由方法本身的序列化...这是我的方式应设法得到预期的效果?