2016-05-10 4 views
1

Ich versuche, einen Blog o django zu erstellen, wo der Administrator Blogs von der Admin-Site veröffentlicht. Ich habe ein TextField für den Inhalt angegeben und möchte nun eine neue Zeile angeben. Ich habe versucht mit \ n aber es hilft nicht. Die Ausgabe auf der Haupt-HTML-Seite ist immer noch die gleiche mit \ n Drucken in es. Ich habe auch versucht, die
Tag und erlaubte Tags = True in meiner Modelldatei. Immer noch das gleiche. Alle Tags kommen wie auf der HTML-Seite.Neue Zeile auf Django admin Textfeld

Meine Django Admin-Formular abgeschickt: Screenshot of the admin page

Das Ergebnis in meinem öffentlichen Vorlage angezeigt: Screenshot of a template, showing text without any newlines

+0

Kann mir jemand helfen Ich habe das gleiche Problem –

Antwort

1

Nach der Suche im Internet und versuchen, verschiedene Django Template Filters, stieß ich auf einen bestimmten Filter, SAFE.

Für mich Zeilenumbrüchen Filter funktionierten nicht, wie oben von @Maxime Verfügung gestellt, aber sicher tat.

Verwenden Sie es so in Ihrer HTML-Vorlage-Datei.

{{post.content|safe}} 

Um ein besseres Verständnis von SAFE Filter zu haben, schlage ich vor, die documentation lesen.

3

Sie sollten die template filter linebreaks verwenden, die die Realen \ n konvertiert (das bedeutet, das Newline im Textfeld nicht die, die Sie unter Verwendung von \ dann n) in <br /> eingegeben haben:

{{ post.content|linebreaks }} 

Alternativ können Sie linebreaksbr verwenden, wenn Sie den umgebenden <p> Block natürlich nicht haben möchten.

+0

Hallo, ich bin auch auf der Suche nach dem gleichen, ich habe ein Modell mit Textfeld und auch entsprechende Admin-Klasse, ich habe keine Ahnung, wo man das ??? Müssen wir den HTML-Code überschreiben und eine Vorlage dafür erstellen ??? –

+0

@ lokesh1729, versuchen Sie mit Safe-Schlüsselwort in HTML-Vorlage-Datei wie folgt: {0} posted: content | safe} Funktioniert für mich. –