2012-01-16 296 views
0

加入兩個字怎麼寫加入其作爲輸入兩個詞模板標籤,輸入可能會或可能不會是模板變量,進出把它作爲字符串或變量模板模板標籤中的Django

+0

https://docs.djangoproject.com/en/1.3/howto/custom-template-tags/#writing-custom-template-tags – Brandon 2012-01-16 15:53:30

+0

我無法想象,爲什麼你甚至需要雙模板標籤將兩個單詞相鄰放置。 – 2012-01-16 16:14:28

+0

爲什麼你不把這些已經加入你的視圖的單詞傳遞給模板? – Jingo 2012-01-16 16:44:26

回答

1

這是你想要的。

在您的應用程序文件夾中創建一個名爲templatetags的文件夾。添加初始化 .py文件和一個名爲像* yourapp_extras.py *與內容類似的文件:

def joinWords(word1, word2): 
    return '%s%s' % (word1, word2) 
register.filter('joinWords', joinWords) 

{% load yourapp_extras %} 

在您的模板的頂部,並使用它像

{{ "word1"|joinWords:"word2" }} 
+0

o_O發揮得好嗎? – 2012-01-16 19:14:28

+0

@ user1144808大家知道,{{word1}} {{word2}}'和@xeor的解決方案一樣好。 – 2012-01-16 19:18:52

+0

但是,這確實不是最初的問題。用戶詢問這個問題可能有所有的理由要問。也許他需要這樣一個更大的模板標籤。例子總是一件好事,即使在這種情況下,它有點矯枉過正:) – xeor 2012-01-16 19:33:00