2011-11-19 32 views
0

你好,我應該如何逃避鏈接渲染?如何逃避或不隱藏這個序列?

enter image description here

我現在寫它的方式是過濾器: {{article.text|striptags|urlize|nl2br|safe}}

你能推薦該怎麼辦呢?

相關問題:https://stackoverflow.com/questions/8179801/autolinebreaks-filter-in-jinja2

謝謝

+1

好吧,如果你想HTML標籤被解釋爲HTML標籤,根本不要轉義它。 –

+0

,但'{{article.text | striptags | urlize | nl2br}}'和escapes之間的輸出呈現切換沒有區別? –

+1

[Python HTML sanitizer/scrubber/filter]的可能的重複(http://stackoverflow.com/questions/699468/python-html-sanitizer-scrubber-filter) –

回答

1

平時我想用HTMLParser進行處理(矯枉過正也許?),下面的示例代碼爲Python 2.7(3.0圖書館更名爲html.parser

from HTMLParser import HTMLParser 

class MyHTMLParser(HTMLParser): 
    def handle_starttag(self, tag, attrs): 
     print "Found Start Tag", attrs 

s = "noivos, convites de casamento <a href=\"http://www.olharcaricato.com.br\"> 
     http://www.olharcaricato.com.br</a> more entries here" 

parser = MyHTMLParser() 
parser.feed(s) 

輸出:Found Start Tag [('href', 'http://www.olharcaricato.com.br')]

注:實現上述代碼作爲過濾器,可以根據需要調整輸出。過濾器的例子發現在Custom jinja2 filter for iterator

+0

很酷的解決方案!謝謝你,正如你所說,當我現在真正需要的時候,它可能是矯枉過正的,用'
'代替'\ n', –