1

mysqllongtextフィールドからデータをフェッチしています。また、新しい行を含めることができます。このデータはテンプレートに渡され、そこでこのロングテキストデータをjavascript変数に割り当てます。私が今得ている問題は、それが不平を言うことunterminated string literalです。

これは、この方法でデータを割り当てようとするためです。

$("#id_review").val("kokokoeoarkgeorkgeorkgeorkg
er
g
gerag
earg
ea
gae
gr
er
gea
g
ear
ge
gae
rg
eagr

kok")

各行の終わりに追加するカスタムフィルターを作成しようとしました"+が、うまくいきませんでした。それで、この問題はどうにかして修正できるのだろうか?

フィルターでの私の試み

@register.filter
def escapenewline(value):
    return value.replace('\n', '\"+')
4

1 に答える 1

3

JSONエンコーダーを使用して、JavaScriptコードで使用できる有効な文字列を作成します。

クイック検索から、Djangoにはこのためのテンプレートフィルターがないようですが、追加するのはそれほど難しくないはずです。jsonフィルターが呼び出されたとtojsonすると、テンプレートのコードは次のようになります。

$("#id_review").val({{ whatever|tojson }});

フィルタは次のようになります。

import json
@register.filter
def tojson(value):
    return json.dumps(value)
于 2012-05-20T15:06:58.350 に答える