如何在视图 Django 中更改渲染以返回 json [重复]
Posted
技术标签:
【中文标题】如何在视图 Django 中更改渲染以返回 json [重复]【英文标题】:How I can change render to return json in view Django [duplicate] 【发布时间】:2018-04-27 13:17:24 【问题描述】:我正在查看函数
from django.shortcuts import render
from .models import myModel
def articleTheme(request):
if request.method == 'POST':
article_id = request.POST['id']
article = myModel.objects.get(id=article_id)
theme = article.theme
return render(request, 'theme.html', 'newTheme': theme )
现在它可以正常工作了。但是我有多余的html。我想返回 json 对象。 我可以导入和返回什么?
【问题讨论】:
【参考方案1】:使用JsonResponse
from django.http import JsonResponse
..
def articleTheme(request):
..
return JsonResponse('newTheme': theme )
【讨论】:
然后如何在下一个视图函数中访问这个?。 模板如何加载??【参考方案2】:您可以使用HttpResponse
和 JSON 格式返回数据,如下所示:
data = 'newTheme': theme
data = json.dumps(data, cls=DjangoJSONEncoder)
return HttpResponse(data)
【讨论】:
以上是关于如何在视图 Django 中更改渲染以返回 json [重复]的主要内容,如果未能解决你的问题,请参考以下文章