2012-10-19 250 views
0

我是變色龍模板的新手。我貼的代碼片斷..變色龍模板渲染

runtemp.py

import os 
path = os.path.dirname(__file__) 
from chameleon import PageTemplateLoader 
templates = PageTemplateLoader(os.path.join(path, "templates")) 
template = templates['mytemp.pt'] 
template(name='John') 
print str(template.read()) 

mytem.pt

<testtag> 
     <innertesttag>${name}</innertesttag> 
    </testtag> 

,但我得到的輸出是

<testtag> 
     <innertesttag>${name}</innertesttag> 
</testtag> 

我在輸出expectinng約翰代替od $(姓名)
什麼問題?如何呈現模板?

回答

2

template.read()只是讀取模板的內容;你放棄了實際的渲染結果。 template(name='John')返回呈現。

而是執行此操作:

print template(name='John') 
+0

謝謝... :) –

+0

但如何爲多個值做到這一點?如姓名,地址,電話等。 –

+0

@ user1539813:向模板添加更多插槽,並在調用模板時將其作爲關鍵字參數傳入。 –