我正在从Apache / PHP / Smarty / Dreamweaver计划切换到金字塔。
我的意思是在Apache中使用静态网站的情况,通过Dreamweaver模板或其他静态工具实现菜单。然后,如果我想在html中添加一些动态内容,我可以进行以下操作:
就是这样。 此方案很方便,因为该站点可在浏览器中查看并可编辑 在Dreamweaver中。
如何在金字塔中重现此方案? 模板和静态内容有单独的目录。加上所有这些myapp:hrefs中的静态修饰符。在哪里查找?
感谢您的建议。
答案 0 :(得分:3)
view_config
以回复网址,最后告诉它使用相应的模板。我猜你仍然可以在Dreamweaver中编辑模板。
仅使用static_url
链接真正的静态页面。如果您想将html设置为模板,最简单的方法就是立即开始使用模板,而不需要任何动态内容。
# in views.py
@view_config(route_name='view_page', renderer='templates/view.pt')
def view_page(request):
return {}
# in __init__.py
config.add_route('view_page', 'mypage.html')
答案 1 :(得分:2)
您可以构建一个小型Web应用程序,该应用程序使用traversal从目录中提供html文档。以下是关于how traversal works的更多解释。
然后,您可以使用PageTemplateFile以编程方式将这些文档呈现为Chameleon模板。这将允许您在每个页面中包含公共页眉/页脚/导航。
这意味着您网站中的每个网页实际上都是动态的,因此无论是否有动态内容,每个页面都会造成很小的性能损失,但您不应该除非你正在构建下一个Facebook,否则请关心这个问题。 :)但是,这种方法可以让你拥有一个简单的html文档,对应于你网站上的每个页面,你可以使用Dreamweaver或任何其他编辑器进行编辑。
答案 2 :(得分:0)
这有点不同于哦,但这是一个完全不同的流程。
以html格式编写所有页面。一切!!!然后使用angularjs或knockoutjs之类的东西来添加动态内容。 Pyramid将使用ajax提供请求的动态内容。
然后你可以将所有内容映射到你的html模板......在任何你想要的地方编辑这些模板,因为它们只是html文件。
缺点是让它完全起作用并不是那么简单。