मैं विकास के लिए Django का उपयोग कर रहा हूं, डेटाबेस से एक newline वर्ण वाले कुछ पाठ को पुनर्प्राप्त करता हूं। हालाँकि, जब मैं इसे टेम्प्लेट टैग का उपयोग करके एक टेम्प्लेट में रेंडर करता हूं तो यह न्यूलाइन वर्ण नहीं दिखाता है।
समस्या क्या है?
मैं विकास के लिए Django का उपयोग कर रहा हूं, डेटाबेस से एक newline वर्ण वाले कुछ पाठ को पुनर्प्राप्त करता हूं। हालाँकि, जब मैं इसे टेम्प्लेट टैग का उपयोग करके एक टेम्प्लेट में रेंडर करता हूं तो यह न्यूलाइन वर्ण नहीं दिखाता है।
समस्या क्या है?
जवाबों:
आपको याद रखना होगा कि आपके टेम्पलेट HTML का निर्माण कर रहे हैं। HTML में, एक नई लाइन वर्ण केवल एक और सफेद स्थान है, इसका मतलब यह नहीं है कि निम्नलिखित पाठ को एक नई पंक्ति में रखा जाए। HTML में नई लाइनों को बाध्य करने के कई तरीके हैं।
आप अपने पाठ को एक <pre>
टैग के साथ लपेट सकते हैं ताकि HTML यह समझ सके कि यह पूर्वनिर्मित है:
<pre>{{value}}</pre>
आप अपने सादे टेक्स्ट को नई लाइनों को HTML में बदलने के लिए Django फ़िल्टर का उपयोग कर सकते हैं। टैग्स linebreaks
में सिंगल न्यूलाइन्स <br>
और <p>
टैग्स में डबल न्यूलाइन्स को बदल देता है । linebreaksbr
बस <br>
टैग में नए सिरे से बदल जाता है :
{{value|linebreaks}}
{{value|linebreaksbr}}
आप इनमें से प्रयोग करके देख सकते हैं कि आपको कौन सा बेहतर लगता है।
ऐसा करने में, आप अपने सादे पाठ को HTML में इस तरह से परिवर्तित करने के लिए अपने दृष्टिकोण में स्ट्रिंग हेरफेर का उपयोग कर सकते हैं जो आपके लिए बेहतर है। और यदि आप वास्तव में उन्नत होना चाहते हैं, तो आप अपने स्वयं के फ़िल्टर को लिख सकते हैं जो आपके पसंद के अनुरूप रूपांतरित करता है, और अपने पूरे टेम्पलेट्स में इसका उपयोग करता है।