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 に答える