Djano-rest-pandas TemplateDoesNotExist

时间:2018-08-30 09:47:06

标签: django-rest-framework

我创建了一个PandasSimpleView,它重写了“ get_data”方法以返回Pandas数据框。

我已将以下renderer_classes放入PandasSimpleView方法中:

renderer_classes =(PandasHTMLRenderer,PandasCSVRenderer,PandasJSONRenderer,PandasTextRenderer)

除HTML之外,我都能成功呈现CSV,文本和JSON。我的假设是,如果我使用PandasSimpleView,则不需要模板即可呈现HTML,因为Django-REST-pandas框架不需要模板,但需要视图和url。

那么,为什么我仍然收到例外TemplateDoesNotExist?

enter image description here

1 个答案:

答案 0 :(得分:0)

QuestionStats类(PandasSimpleView):

renderer_classes = (PandasHTMLRenderer, PandasCSVRenderer, PandasJSONRenderer, PandasTextRenderer,)

def get_data(self, request, *args, **kwargs):
    curr_slug = self.request.query_params.get('slug', None)
    data = get_question_stats(curr_slug)
    return data

def get(self, request, *args, **kwargs):
    data = self.get_data(request, *args, **kwargs)
    return Response(data, template_name='questions/questionstats.html')

通过覆盖“ get”方法并返回带有模板名称位置的Response,可以解决问题。