2012-06-14 24 views
1

我只需要轉義輸出的部分用戶輸入。例如如何從Django的視圖渲染模板標籤

Hey a status update for <a href="/profile/2353">@Friend Name</a> 

我只是需要逃生,以防有人文本的鏈接部分確實像

<h1>HaCkEDED!!!!</h1> 

所以我無法逃脫整個塊。所以,我想這個

'{%% autoescape off %%} <a href="/profile/%s">%s</a>{%% endautoescape %%}' % (tag, at) 

當我把這個輸出在這裏瀏覽器是我所得到

{% autoescape off %} <a href="/profile/2353">@Friend Name</a>{% endautoescape %} 

我怎樣才能獲得autoescape工作?我不能使用一個單獨的變量,並把

{{ tag | safe }} 

因爲一個職位可能有多個標籤,並且標籤將在不同的位置。那麼我怎樣才能讓Django讓我輸出它的一個模板呢?

+0

這很容易...但它非常醜陋......因此,只有一個曲目:您應該使用Template類http://dattatecblog.com/wp-content/uploads/2012/01/oh_my_god。 jpg – Goin

回答

3

我不明白你想要做什麼,但在視圖中,你可以使用django.utils.safestring.mark_safe來標記項目不需要自動轉義。

+0

我試圖做的是從視圖中輸出{%autoescape off%}。這確實是我所需要的。謝謝! – Ulmer