2010-05-15 90 views
2

我必须在我的模板中包含动态页面内容,假设我有一个左侧面板,它通过视图动态获取数据。现在,我必须将此左侧面板包含在我的所有页面中,但我不想为所有页面复制代码。有没有办法,我可以编写一个脚本并将其包含在我的所有模板中,以在我的所有页面中显示左侧面板?如何将动态页面内容添加到模板中?

在此先感谢。

+0

你使用任何特定的框架?如果是这样,请提供详细信息... – miku 2010-05-15 08:50:49

+0

如果您没有使用任何库,您只需将可重用模板作为字符串返回。如果你是,那么有特定的库解决方案。 – 2010-05-15 08:57:50

+0

我正在使用Django框架... – Ankit 2010-05-17 09:15:18

回答

0

你试图实现的是几乎所有我知道的模板语言直接支持。我强烈建议使用一个许多不错的选择为Python:

如果您使用Genshi例如(在TurboGears Web应用程序框架的默认模板语言),你想要做的会是这个样子的:

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:py="http://genshi.edgewall.org/" 
     xmlns:xi="http://www.w3.org/2001/XInclude" 
     py:strip=""> 
    <xi:include href="header.html" /> 
    <xi:include href="sidebar.html" /> 
    <xi:include href="footer.html" /> 

    <!-- The rest of your page goes here --> 
<html> 

header.htmlsidebar.htmlfooter.html只需要定义一次并在任何其他页面中重用。

+0

感谢您的帮助Tendayi,您的建议似乎工作的情况下,内容是静态的,即为HTML文件。但在我的情况下,内容是动态生成的,正如我提到的,这是行不通的。 – Ankit 2010-05-17 09:17:38

相关问题