Geliştirme için Django kullanıyorum, veritabanından yeni satır karakteri içeren bazı metinler alıyorum. Ancak, onu bir şablon etiketi kullanarak bir şablona dönüştürdüğümde, satırsonu karakterini göstermiyor.
Sorun nedir?
Geliştirme için Django kullanıyorum, veritabanından yeni satır karakteri içeren bazı metinler alıyorum. Ancak, onu bir şablon etiketi kullanarak bir şablona dönüştürdüğümde, satırsonu karakterini göstermiyor.
Sorun nedir?
Yanıtlar:
Şablonlarınızın HTML ürettiğini unutmamalısınız. HTML'de, yeni satır karakteri yalnızca başka bir beyaz boşluktur, aşağıdaki metni yeni bir satıra koymak anlamına gelmez. HTML'de yeni satırları zorlamanın birkaç yolu vardır.
Metninizi bir <pre>
etiketle kaydırabilirsiniz, böylece HTML metninizin önceden biçimlendirilmiş olduğunu anlar:
<pre>{{value}}</pre>
Düz metin yeni satırlarınızı HTML'ye dönüştürmek için Django filtrelerini kullanabilirsiniz. linebreaks
tek yeni satırları <br>
etiketlere ve çift yeni satırları <p>
etiketlere dönüştürür . linebreaksbr
sadece yeni satırları <br>
etiketlere dönüştürür :
{{value|linebreaks}}
{{value|linebreaksbr}}
Hangisini daha çok sevdiğinizi görmek için bunlarla deneyebilirsiniz.
Başarısız olursa, düz metninizi size daha uygun bir şekilde HTML'ye dönüştürmek için görünümünüzde dize manipülasyonunu kullanabilirsiniz. Ve gerçekten ilerlemek istiyorsanız, istediğiniz şekilde dönüştüren kendi filtrenizi yazabilir ve şablonlarınızda kullanabilirsiniz.