DjangoでJSON受け渡し

NO IMAGE

前回、前々回とDjangoに関する記事を載せましたが、カスタムフィルタでのJSONの受け渡しに少し苦戦したので、記録として残しておきたいと思います。

カスタムフィルタ

カスタムフィルタ側はとりあえず受け取った値を含んだJSONデータを成形して返すというものになっています。データはmark_safeという関数を通していますが、これがないまま受け渡ししようとしてずっとうまくいきませんでした。Django側で用意されている関数は色々あるようですが、いつ何を使えばいいのか良く分からないのが不便です。

テンプレート

テンプレートではJavascriptを使ってカスタムフィルタを呼び出して値を受け取っています。値は配列もしっかり取得できます。

上記でhtmlにアクセスするとコンソールにv1, v2が出力されます。

これで、javascriptでは面倒な処理もpythonのライブラリを駆使して出来るようになりました。