我有一个这样的视图功能:
from django.http import Http404, HttpResponse
from django.template import Context, loader
from .models import Recipe
def index(request):
recipes = Recipe.objects.all()
t = loader.get_template('recipes/index.html')
c = Context({'object_list': recipes})
return HttpResponse(t.render(c))
但是因为我想实现一些AJAX,我不想在HttpResponse对象中包含整个渲染模板,只需要将所需的数据传递给AJAX成功函数。
我的问题是:如何让我的视图函数只返回响应中需要的ajax数据,而不需要包含整个模板(就像现在一样)
答案 0 :(得分:0)
如果你想发送json响应。你可以这样做。
from django.core import serializers
def index(request):
recipes = Recipe.objects.all()
data = serializers.serialize('json', recipes)
return HttpResponse(data, content_type='application/json')