Django hat ein truncatewords
Vorlagen-Tag, das den Text bei der angegebenen Wortzahl schneidet. Aber es gibt nichts Schöneres als Truncatechars .
Was ist der beste Weg, um den Text in der Vorlage bei einer bestimmten Zeichenlänge zu schneiden?
django
django-templates
grigy
quelle
quelle
Aktualisieren
Seit Version 1.4 verfügt Django über ein integriertes Vorlagen-Tag :
quelle
truncatechars
Filter fügt standardmäßig ein Ellipsenzeichen hinzu.Ich habe meinen eigenen Vorlagenfilter erstellt, der "..." auch am Ende (letztes Wort) der (abgeschnittenen) Zeichenfolge hinzufügt:
quelle
Wenn Sie lieber ein eigenes benutzerdefiniertes Vorlagen-Tag erstellen möchten, sollten Sie den Django util Truncator verwenden . Das Folgende ist ein Beispiel für die Verwendung:
Dann können Sie es in ein Vorlagen-Tag einfügen:
quelle
Hier ist es in der Django-Dokumentation, Integrierte Vorlagen-Tags und Filter: Truncatechars
quelle
Sie sollten einen benutzerdefinierten Vorlagenfilter schreiben: http://docs.djangoproject.com/de/dev/howto/custom-template-tags/#writing-custom-template-filters
Schauen Sie sich an, wie
truncatewords
eingebaut istdjango.utils.text
quelle
slice
quelle
truncatechars
sollte dies jedoch bevorzugt werden, da dies expliziter ist.Das Hinzufügen eines "Abschneiden" -Filters war eine Funktionsanforderung für 4 Jahre, landete aber schließlich im Kofferraum, soweit ich https://code.djangoproject.com/ticket/5025 verstehe - also müssen wir auf die nächste Veröffentlichung oder Verwendung warten Kofferraum.
quelle
Sie können Ihr Ziel mit ähnlichem Code erreichen:
{{ value_of_text|truncatechars:NUM_OF_CHARS_TO_TRUNCATE}}
Wo
NUM_OF_CHARS_TO_TRUNCATE
ist die Anzahl der Zeichen zu verlassen.quelle