我在Python / Pylons项目中有一个主页,它有多个不同的块(例如news / demo /(registration | private zone)/ ...)。
我的想法是每个块应该在一个单独的控制器中生成。 如何在主页面控制器中调用另一个控制器方法?
答案 0 :(得分:1)
你想做的是HMVC。我不确定它是否与Pylons开箱即用,因为它是MVC。
如果您的代码在多个控制器中重复,您可以将某些代码移出控制器(在模型或其他模块中)。
此外,如果您使用的是Mako模板,则可以使用继承http://www.makotemplates.org/docs/inheritance.html并使用defs http://www.makotemplates.org/docs/defs.html重复使用部分模板。
答案 1 :(得分:0)
这可能是您开始将代码块移动到库函数到Pylons项目的/lib
部分的地方。 “由一个单独的控制器生成”可能太过分了 - 你只需要不重复自己。尝试使用库函数来确保正确的数据可用,然后使用Mako的继承和命名空间功能。