Wie render HTML-Inhalte mit Jinja mit Kolben?

9

Ich verwende Flask in einer App, die einige Daten aus einer SQLite-Datenbank rendert. Mein Problem ist, wenn die App Text, der HTML hat, in Textform statt HTML ausgeben lässt. Zum Beispiel hat der Datensatz in der Datenbank den folgenden Text:

%Vor%

Die HTML-Seite wird folgendermaßen gerendert:

%Vor%

Und was ich will ist das ("ist" Wort muss mutiger sein):

%Vor%

Weiß jemand, wie kann ich das tun?

    
jaloplo 01.10.2012, 11:33
quelle

2 Antworten

27

Wenn Sie wissen, dass der Inhalt sicher ist, verwenden Sie einfach den safe Filter:

%Vor%     
Sean Vieira 01.10.2012, 13:11
quelle
-1

Eine andere Möglichkeit besteht darin, die jinja-Markup-Klasse zu verwenden, genau wie ein sicherer Filter. Dadurch können Sie HTML rendern, ohne Inhalt durch den sicheren Filter zu filtern. Im Folgenden finden Sie ein Beispiel dafür, wie dies erreicht werden kann.

%Vor%

Danach können Sie Ihre Funktion in den Flask jinja globals registrieren und sie aus der jinja Vorlage verwenden.

%Vor%

In der Vorlage ist kein Safe erforderlich.

%Vor%     
Boris 25.04.2015 20:15
quelle

Tags und Links