मैं json का उपयोग कर simplejson.dumps में एक अजगर सरणी एन्कोड करने के लिए कोशिश कर रहा हूँ:Django escapejs और simplejson
In [30]: s1 = ['test', '<script>']
In [31]: simplejson.dumps(s1)
Out[31]: '["test", "<script>"]'
वर्क्स ठीक।
लेकिन मैं बुला simplejson.dumps से पहले पहली तार से बचने के लिए (Django से escapejs का प्रयोग करके) हैं:
In [35]: s_esc
Out[35]: [u'test', u'\\u003Cscript\\u003E']
In [36]: print simplejson.dumps(s_esc)
["test", "\\u003Cscript\\u003E"]
मेरे समस्या है: ["test", "\u003Cscript\u003E"]
के बजाय ["test", "\\u003Cscript\\u003E"]
मैं replace
उपयोग कर सकते हैं:
In [37]: print simplejson.dumps(s_esc).replace('\\\\', '\\')
["test", "\u003Cscript\u003E"]
लेकिन यह एक अच्छा तरीका है? मैं सिर्फ जेसन को एन्कोड करने से पहले तारों से बचना चाहता हूं। इसलिए जब मैं टेम्पलेट में उनका उपयोग करता हूं तो कोई वाक्यविन्यास त्रुटियां नहीं होंगी।
धन्यवाद। :)
हां, आप सही जोड़ रहे हैं मेरे लिए काम नहीं किया। मुझे नहीं पता था कि JSONEncoderForHTML है। मेरी मदद करने के लिए बहुत बहुत धन्यवाद। :) – srcastro