我第一次尝试使用Django REST框架,看看教程没有模板示例,我可以使用什么模板?我试过template_name =' authorListAjax.html'但是我得到了这个回复http://imgur.com/fMlyXDN
class AccountSerializer(serializers.ModelSerializer):
class Meta:
model = Author
fields = ('subject', 'date', 'time_start')
class AuthorListAll1(ListAPIView):
template_name = 'authorListAjax.html'
queryset = Author.objects.all()
serializer_class = AccountSerializer
paginate_by = 2
paginate_by_param = 'page_size'
max_paginate_by = 100
url(r'^ajax/list/$', AuthorListAll1.as_view(), name='ajax_list'),
答案 0 :(得分:0)
您需要设置渲染器:http://www.django-rest-framework.org/api-guide/renderers#templatehtmlrenderer
这意味着添加此行(告诉DRF响应将是HTML,而不是JSON):
renderer_classes = (TemplateHTMLRenderer,)
此外,您无法在视图类上设置模板名称;模板名称属于渲染器类。您可以直接在渲染器上设置它,如下所示:
TemplateHTMLRenderer.template_name = 'authorListAjax.html'
或者您可以覆盖get方法并将其设置在那里,如下所示:
return Response({'user': self.object}, template_name='authorListAjax.html')
我建议您采用第二种方式,因为第一种方式是全局设置模板名称,它可能会让您遇到麻烦:)