7
votes

Django Afficher les champs de texte

J'ai un formulaire avec Textfield code> S dans django et les utilisateurs entrent des textes ligne par ligne. Lorsque je regarde les entrées du côté administrateur, j'ai vu comment l'utilisateur l'a écrit, mais lorsque je l'affiche sur mon site Web, dans les modèles de Django, il rejoint simplement les phrases et je ne pouvais plus afficher la ligne de texte par ligne.

Pour illustrer, l'utilisateur entre du texte sous forme p>

-BLA P>

-BLA1 P>

-BLA2 P>

Cependant, il ressemble à ma page Comme P>

-BLA1-BLA2-BLA3 P>

Ceci est mon code dans le modèle: P>

<div>
   <p>
      {{ rev.myTextField }}
   </p>
</div>


0 commentaires

3 Réponses :


1
votes

Essayez "Safe" tag xxx


0 commentaires

17
votes

dans HTML, les nouvelles lignes entre le texte n'impliquent pas une nouvelle ligne à l'écran; Vous devez utiliser HTML pour insérer la nouvelle ligne. Le moyen le plus simple est avec la balise
, bien qu'il existe également d'autres méthodes.

django a un filtre de modèle pour cela: Utilisez | Ligneurs . Voici la documentation .

donc, changez: xxx

à: xxx


2 commentaires

Merci c'est génial.Mais si je voudrais afficher seulement 200 personnages après les pauses de la ligne. Y a-t-il un moyen de faire cela?


Il y a un filtre Motswords de tronquets intégré , mais pas un filtre de caractères tronquent. Vous devrez ajouter un filtre personnalisé: voici le code: Djangosnippets.org/snippets/1471



0
votes

en utilisant

{{rev.mytextfield | Ligneurs}}

désactive tag, sa meilleure utilisation

{{rev.mytextfield | Linebreaksbr}}

Il suffit de mettre
tag, pas


0 commentaires