可能您有Javascript从Django模板标签(例如var spec = "{{ foo }}";
)读取变量值。JavaScript中的Django模板标签 - 无引号的无效语法,带引号的无效语法
但是,如果foo需要是JSON对象。它变成这样:
var spec = "{"2": {"guid": 2, "contentBlocks": {"2_1": {"guid": "2_1", "type": "list"}}}}";
前面对引号这使无效的JavaScript语法,但是,如果我离开他们,这也是一个无效的语法var spec = {{ foo }};
什么将是最好的方式解决这个问题?要么foo
输出完整的<script></script>
块,要么让JavaScript从服务器请求此对象,而不是通过模板标记输出它? ......
我通常在返回值中使用mark_safe(),或者你会不会推荐这么做? – 2010-11-12 09:54:25
无论哪种方式都可以正常工作 - 取决于您是否愿意在模板或视图中执行此操作。 – 2010-11-12 11:42:42