2

我正在尝试查询数据列表,将其转换为 json 对象,然后将其传递给我的 javascript,以便可以在那里对其进行评估:

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.

这是我的jsonify:

 if isinstance(object, QuerySet):
    return serialize('json', object)
return simplejson.dumps(object, ensure_ascii=False)

任何帮助将不胜感激,谢谢。

4

2 回答 2

1

django 默认会转义 html 字符

如果您完全信任数据(即它来自您的代码,并且内容的任何部分都不能来自用户),您可以使用

var data = '{{ passed_list|jsonify|safe }}';

告诉 django 不要逃避它

于 2012-11-25T15:39:40.547 回答
0
var data = '{{ portfolio|jsonify|escapejs|safe }}';

在jsonify之后放置的过滤器escapejs使用特殊字符解决了问题,例如:'

于 2013-05-05T02:09:11.833 回答