在金字塔文档中,有一个关于UX的很好的教程:
http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/humans/creatingux/step07/index.html
但我注意到的一件事是,在教程中,他们在代码中显式地设置和传递“全局布局”(见下文)。我认为这是不寻常的,也是不必要的,因为我总是使用'load‘命令,如这里的文档所示:
http://chameleon.repoze.org/docs/latest/
这只是个人偏好问题,还是以这种方式设置和使用“全局布局”有真正的好处?
教程基本视图类:
class Layouts(object):
@reify
def global_template(self):
renderer = get_renderer("templates/global_layout.pt")
return renderer.implementation().macros['layout']教程模板文件:
<div metal:use-macro="view.global_template">
<div metal:fill-slot="content">
<p>Home page content goes here.</p>
</div>
</div>但在我的模板文件中,我只是使用:
<div metal:use-macro="load: global_layout.pt">
<div metal:fill-slot="content">
<p>Home page content goes here.</p>
</div>
</div>发布于 2012-01-13 13:12:08
间接方式(通过视图)为您提供了更多的灵活性。好处在小项目中不是那么明显,但这种方法在大型项目中肯定是值得的。"load:“就是把你的main_template (用Zope/Plone的说法)硬编码到这里。使用视图,它可以来自任何地方,并且可以独立于您的模板进行更改。
https://stackoverflow.com/questions/8845435
复制相似问题