GAE 项目的母版页 (python)

Posted

技术标签:

【中文标题】GAE 项目的母版页 (python)【英文标题】:Master pages for GAE project (python) 【发布时间】:2011-11-26 07:49:31 【问题描述】:

我有一个在 GAE 上运行的项目,我非常讨厌在我拥有的所有页面模板中手动支持页眉和页脚。 有没有办法使用 GAE 的母版页?

【问题讨论】:

【参考方案1】:

您可以拥有一个带有页眉和页脚的_base.htm 模板:

<!-- header -->
% block bodycontent %

% endblock %
<!-- footer -->

并使用特定模板对其进行扩展:

% extends "_base.htm" %
% block bodycontent %  

<!-- template-specific stuff -->

% endblock %

示例

这是我cms-app on github的模板文件夹:

templates/
├── _404.htm
├── _base.htm
├── _edit.htm
├── _login.htm
├── _unavailable.htm
├── blog.htm
└── default.htm

blog.htm 和 default.htm 模板扩展了带有页眉、页脚和计数器的 _base.htm 模板。

旁注,

在我不在 github 上的另一个应用程序上,我使用命名约定,其名称类似于 search.foo.base.htm,这意味着它是扩展 foo.base.htm 模板的模板,它扩展了 base.htm 模板 - 我认为这是一个有用的如果您有复杂的模板层次结构,请提示。

文档

GAE 使用 django 模板版本 0.96(默认),在 djangoproject.com 网站上找不到该文档。不过也有好心人把它们放到网上,看到这个问题: Missing Django 0.96 Template documentation (used by Google AppEngine developers)

【讨论】:

没有理由使用 Django 1.2 模板。创建/编辑appengine_config.py 并添加行webapp_django_version=1.2 @DaveW.Smith,哇,这个很有用,谢谢提示。我知道use_library(),但之前没有听说过`appengine_config.py'!

以上是关于GAE 项目的母版页 (python)的主要内容,如果未能解决你的问题,请参考以下文章

如何在文件后面的母版页代码中执行异步函数?

使用具有选择性模拟的母版页

创建适合任何屏幕分辨率的母版页

如何使用 Sitemappath 控件在网站的母版页中添加面包屑?

如何将SharePoint顶部导航定位到中心?

如何在两个部分中使用扩展相同的母版页布局?