2016-07-31 14 views
1

Ich möchte smart Scheibe einen HTML-Inhalt.Django Vorlage: Smart Slice den HTML-Inhalt

die news als Beispiel nehmen, die Seite für eine Nachrichtenliste angezeigt ist wie folgt:

<table> 
    <tr><th>Title</th><th>Content</th></tr> 
    {% for news in newsList %} 
    <tr> 
     <td><a href="/news/{{news.id}}/">{{news.title}}</a></td> 
     <td>{{news.content | slice:":30" | safe}} ...</td> 
    </tr> 
    {% endfor %} 
</table> 

Der Inhalt einer Nachricht ist so geschnitten, dass der Benutzer nur einen Teil der Nachrichten sehen. Aber wenn der Platz slice:":30" zufällig in einem HTML-Tag ist, würde es ein Problem geben.

Zum Beispiel, wenn der Gehalt an news.content ist der folgende:

<p>What is Content Marketing?</p>

Das Ergebnis des Schneidens <p>What is Content Marketing?< ... sein würde, in dem das Etikett <p> ist nicht geschlossen.

Gibt es eine Möglichkeit, ein HTML-Tag beim Schneiden beizubehalten?

Antwort