1
class TestAPI(APIView):   
    def post(self, request, format=None):
        # Here, I process the request in SomeClass method
        # 'some_result' is a tuple in the format below
        some_result = SomeClass.some_method(request)
        response = Response(some_result, status=status.HTTP_200_OK, headers=None)
        return response

参考までに、'some_result'含まれています:

(u'text1', [('dataA1', 'dataA2', 'dataA3'), ('dataB1', 'dataB2', 'dataB3')], 'text2')

だから私の質問は、このタプル(上記)を解析して、次のようなtsvを返すことができるかどうかです:

dataA1 dataA2 dataA3
dataB1 dataB2 dataB3

よろしくお願いします。

4

1 に答える 1

3

カスタム レンダラーの実装に関するドキュメントを参照してください。

http://django-rest-framework.org/api-guide/renderers.html#custom-renderers

カスタムレンダラーは次のようになります...

class TSVRenderer(renderers.BaseRenderer):
    media_type = 'text/tsv'
    format = 'tsv'

    def render(self, data, media_type=None, renderer_context=None):
        return ...  # TODO: Convert you incoming data representation into a TSV string

次に、属性を設定してレンダラーをビューに追加できますrenderer_classes...

class TestAPI(APIView):
    renderer_classes = [TSVRenderer]
    ...
于 2013-02-01T19:37:31.077 に答える