Django - 返回其中包含HTML代码的JSON响应

时间:2015-10-01 00:01:19

标签: jquery python django

我试图在使用Ajax调用的Django中返回JSON响应。 JSON响应只是一个列表,每个索引都包含某种HTML代码。我在使用Ajax成功提取它之后尝试在JQuery中解析此响应时遇到了一些错误。当我尝试在控制台中记录收到的JSON响应时,Chrome开发人员工具会告诉我此错误Uncaught SyntaxError: Unexpected token &

以下是我用来从Django返回JSON响应的代码,其中包含HTML代码。

template = loader.get_template('home_post.html')
post_arr = []
for post in posts:
    context = Context({'image': post.image, 'body': post.body})
    post_arr.append(escape(template.render(context)))
return HttpResponse(json.dumps(post_arr), content_type='application/json')

除了我现在正在做的事情之外,我有什么方法可以做到这一点?有没有内置的方法来转义HTML代码,以便我可以把它放在JSON响应中?

1 个答案:

答案 0 :(得分:1)

是的,请使用内置的safe模板过滤器。

Documentation.