原始Mako模板包含在另一个在Pylons

时间:2011-01-27 03:41:01

标签: pylons mako

我正在尝试包含一个原始的Mako模板,使其出现在带有Pylons的textarea中。

在Pylons中,我知道我可以在另一个中包含一个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" />

如果那种事情是不可能的,那么编写Pylons控制器的最佳途径是在后期进行包含吗?

我可以以某种方式包装要包含在&lt;%text&gt;中的文件吗?动态标签,可能使用&lt;%def&gt;?

1 个答案:

答案 0 :(得分: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,或类似的东西。