Javascript json字符串和django模板的问题
我试图查询数据列表,将其转换为json对象,并将其传递到我的javascript中,以便在那里对其进行计算:Javascript json字符串和django模板的问题,javascript,django,json,Javascript,Django,Json,我试图查询数据列表,将其转换为json对象,并将其传递到我的javascript中,以便在那里对其进行计算: var data = '{{ passed_list|jsonify }}'; # This evaluates to: var news = '[{"pk": 133, "model": "Article.article ","fields&
var data = '{{ passed_list|jsonify }}';
# This evaluates to:
var news = '[{"pk": 133, "model": "Article.article
","fields":
但是,这不起作用,因为我正在尝试访问元素
比如说,
var object = data[0].pk;
In my view source, this does not evaluate to 133 as expected but it evaluates
to ... data[0].pk ... which is a bit confusing.
这是我的建议:
if isinstance(object, QuerySet):
return serialize('json', object)
return simplejson.dumps(object, ensure_ascii=False)
任何帮助都将不胜感激。默认情况下,django将转义html字符 如果您完全信任数据(即,数据来自您的代码,内容的任何部分都不能来自用户),则可以使用
var data = '{{ passed_list|jsonify|safe }}';
告诉django不要逃避它
var data = '{{ portfolio|jsonify|escapejs|safe }}';
在jsonify之后放置的Filter escapejs解决了带有特殊字符的问题,如:“谢谢!看起来差不多解决了,还有一个小问题,chrome的调试器说有一个“在中国和美国之间用逗号表示的意外标识符”标题:“中国的有毒牛奶告密者被谋杀了。”“,如果我想逃避引用,而不是其他引用,该如何处理?听起来像是
jsonify
中的一个bug。”。。它返回的是有效的json吗?是的,我实际上使用了django的默认jsonify代码段,我在我的主要帖子中对其进行了更新。你的建议奏效了,我只是太愚蠢了{{passed_list | jsonify}}毫无意义,为什么我甚至会在许多在线json指南中包含这些引号,因为某些原因,许多人在他们的json对象上都有单引号,但不确定为什么。