我在django的视图函数里渲染一个模板文件得到一个html代码格式的字符串,然后通过json传到前台,但是有些地方布局却乱掉了,具体情况如下:
views.py
def post_ajax(request):
TOTLE = 5
OFFSET = int(request.GET.get('offset', 0))
END = OFFSET + TOTLE
if OFFSET + 1 >= Post.objects.count():
LOADED = "已经全部加载完毕"
return HttpResponse(LOADED)
posts = Post.objects.filter(pub_time__lte=timezone.now())[OFFSET:END]
for post in posts:
t = get_template('blog/ajax_post.html')#获取模板
html = t.render(Context({'post': post}))#手动渲染模板
print(html)#此时输出结果是正确的
json_list.append({
'html': html,
})#将渲染后的html格式代码字符串加入列表
data = json.dumps(json_list)#转换为json格式传到前台
return HttpResponse(data, content_type="application/json")
模板文件代码如下:
ajax_post.htm
{% load md %}
{% if post.abstract %}
{{ post.abstract }}
{% else %}
{% endif %}
在视图函数中我打印了渲染后的html字符串,渲染是正确的,但是通过json传到前台后html字符串就乱了,出错的两行关键代码如下: