2016-10-19 5 views
0

Angenommen, Sie haben HTML mit Web2py-Helfern generiert und möchten den Code auf Ihrer Seite mit dem CODE() - Hilfsprogramm anzeigen. Im Folgenden ist ein Beispiel-Setup:Einrückender Code, der mit dem HTML-Hilfsprogramm CODE() gerendert wird

div = DIV(SPAN(INPUT(...)), SPAN(INPUT(...))) 
code = CODE(str(div).replace('><','>\n<')) 

Wenn gemacht, würde die oben zeigen als Zeilen nummerierte Version der folgenden:

<div> 
<span> 
<input ...> 
</span> 
<span> 
<input ...> 
</span> 
</div> 

Gibt es eine einfache Art und Weise Einzug Formatierung der hinzufügen oben, so dass es in der Website als eingerückter HTML-Code angezeigt wird (dh hat der CODE() - Helfer irgendeine Funktionalität, die Einrückung bereitstellt)?

Antwort

2

Die CODE Helfer jede Formatierung des Codes nicht tun, aber man kann so etwas tun:

import xml.dom.minidom as xml 

def pretty_html(helper, indent=' '): 
    declaration = len(xml.Document().toxml()) + 1 
    doc = xml.parseString(helper.xml()) 
    return doc.toprettyxml(indent=indent)[declaration:] 

div = DIV(SPAN(INPUT(...)), SPAN(INPUT(...))) 
code = CODE(pretty_html(div)) 
+0

schön Works. Vielen Dank! – Boa

Verwandte Themen