2011-01-27 42 views
1

我想包括一個原始的Mako模板,使其出現在與塔主題的textarea。原始Mako模板包含在另一個在主塔

在主塔,我知道我可以包括在另一個像這樣的Mako的模板:

<html> 
<body> 
Here is some HTML. Now, I want to include a template. 
<%include file="${c.a_mako_template}" /> 
</body> 
</html> 

有沒有一種方法,我可以做同樣的事情,但有模板顯示原始標記,而不是傳遞通過Mako渲染器?我想象類似:

<%include file="${c.a_mako_template}" render="false" /> 

如果那種事情是不可能的,是寫一個主塔控制器不包含在後一階段的最佳途徑?

我可以以某種方式將文件包裝在<%text>標籤中,或許使用<%def>?

回答

1

我已經想出了一種可行的解決方案。它仍然有一個粗糙的位,但它的工作原理。

<% 
    path = '/path/to/file/' 
    f = open(path + c.sourcefile, 'r') 
    text_to_edit = f.read() 
    f.close() 
%> 
     <textarea id="code"> 
     ${text_to_edit} 
     </textarea> 

第一部分只是嵌入在模板中的一塊Python。它打開文件並提取文本,從而繞過Mako。

粗糙的位是硬編碼路徑。我必須將其作爲c.path來傳遞,或者類似的東西。

相關問題