2011-09-14 16 views
9

मैं एक Django परियोजना में Jinja2 का परीक्षण कर रहा था और एक अजीब आउटपुट है। जब मैं प्रपत्र प्रस्तुत करना, कुछ अक्षर (आदि < >) एचटीएमएल इनकोडिंगजिन्जा 2 - डीजेगो फॉर्म: प्रतिपादन एन्कोड एचटीएमएल

टेम्पलेट में कर रहे हैं:

{{ form.as_p() }} 

यह ब्राउज़र को प्रस्तुत करता है:

<p><label for="id_username">Utilisateur:</label> <input autocomplete="off" id="id_username" type="text" name="username" maxlength="100" /></p> <p><label for="id_password">Mot de passe:</label> <input autocomplete="off" type="password" name="password" id="id_password" /></p> 

स्रोतों को देखते हुए:

&amp;lt;p&amp;gt;&amp;lt;label for=&amp;quot;id_username&amp;quot;&amp;gt;Utilisateur:&amp;lt;/label&amp;gt; &amp;lt;input autocomplete=&amp;quot;off&amp;quot; id=&amp;quot;id_username&amp;quot; type=&amp;quot;text&amp;quot; name=&amp;quot;username&amp;quot; maxlength=&amp;quot;100&amp;quot; /&amp;gt;&amp;lt;/p&amp;gt; 
&amp;lt;p&amp;gt;&amp;lt;label for=&amp;quot;id_password&amp;quot;&amp;gt;Mot de passe:&amp;lt;/label&amp;gt; &amp;lt;input autocomplete=&amp;quot;off&amp;quot; type=&amp;quot;password&amp;quot; name=&amp;quot;password&amp;quot; id=&amp;quot;id_password&amp;quot; /&amp;gt;&amp;lt;/p&amp;gt; 

क्या कोई इस समस्या को जानता है?

उत्तर

26

जिनजा 2 HTML-escaping the data द्वारा सुरक्षित होने की कोशिश करता है। तो आपको |safefilter का उपयोग करना होगा।

हालांकि मैं Jinja2 साथ Django उपयोग नहीं किया है, मेरा मानना ​​है कि यह काम करना चाहिए:

{{ form.as_p()|safe }} 
+0

महान इस ठीक काम करता है। धन्यवाद! – Patrick

+5

@ पैट्रिक: यदि आपको यह पोस्ट उपयोगी लगता है, तो कृपया [स्वीकार करें] (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)। –

+1

उपरोक्त। मुझे भी मदद की! – Raj

संबंधित मुद्दे