2010-01-26 25 views
10

में अनचाहे एचटीएमएल स्टोर करें मैं अपने होम पेज पर प्रदर्शित होने के लिए अपने Django मॉडल में से एक के अंदर कच्चे, अनपेक्षित HTML को स्टोर करने की कोशिश कर रहा हूं। हालांकि, जब मैं इसे टेक्स्टफिल्ड में संग्रहीत करता हूं तो यह बच जाता है, और केवल कच्चे पाठ के रूप में प्रदर्शित होता है। मैं Django मॉडल में कच्चे HTML को कैसे स्टोर कर सकता हूं?Django - मॉडल

** संपादित करें **

ऐसा लगता है जैसे कि अपने मॉडल परत में भाग गया हो रही है, लेकिन खाका परत में। क्या मुझे एक विशेष टैग का उपयोग करना चाहिए? मैंने खोल में मूल्य की जांच की और यह ठीक है, लेकिन कुछ कारणों से जब मैंने टेम्पलेट में {{block.html} (एचटीएमएल ब्लॉक ऑब्जेक्ट की विशेषता है जो वास्तविक एचटीएमएल स्टोर करता है), तो यह इस तरह से निकलता है:

<p>This is a <strong>very</strong> <em>important</em> <span style="text-decoration: underline;">block</span></p> 
<p style="padding-left: 30px;">it has very significant content!</p> 
+0

नहीं, यह नहीं है। मैं आपको अन्यथा साबित करने की हिम्मत करता हूं। –

उत्तर

15

आप बच गए पाठ पेश करने के लिए नहीं छोड़ा जाएगा पाठ, या escape फिल्टर पेश करने के लिए safe फिल्टर का उपयोग कर सकते हैं। आप ब्लॉक सेट करने के लिए autoescape टैग का भी उपयोग कर सकते हैं। ({% autoescape on %} या {% autoescape off %})

+0

'सुरक्षित' फ़िल्टर का उपयोग करने या ऑटोस्केप को अक्षम करते समय सुरक्षा निहितार्थ पर ध्यान दें। सुनिश्चित करें कि उस फ़िल्टर/ब्लॉक के माध्यम से जो भी गुजरता है वह वास्तव में सुरक्षित है। –