2010-09-12 37 views
4

我在一个Mako模板中,我想知道当前控制器和动作是(当前页面的)。我怎样才能做到这一点?我试过c.controller和c.action,但它不起作用。我还列出了上下文对象的键,但没有找到它。塔架 - 如何获取当前控制器和动作(当前路线)?

作为一种解决方法,我已经在每个控制器方法中设置了c.controller和c.action,但我知道必须有更好的方法。

class MainController(BaseController): 

    def index(self): 
     c.controller, c.action = 'main', 'index' 
     return render("/main.html") 

回答

6

在模板中:

当前URL:

${url.current()} 

控制器和行动:

${url.environ['pylons.routes_dict']['controller']} 
${url.environ['pylons.routes_dict']['action']}