Пилоны - Как получить текущий контроллер и действие (текущий маршрут)? - PullRequest
4 голосов
/ 12 сентября 2010

Я нахожусь в шаблоне Мако, и я хочу знать, каков текущий контроллер и действие (текущей страницы).Как я могу это сделать?Я попробовал c.controller и c.action, но это не сработало.Я также перечислил ключи объекта контекста, но не нашел его.

В качестве обходного пути я устанавливал c.controller и c.action внутри каждого метода контроллера, но я знаю, что должно бытьлучший способ.

class MainController(BaseController):

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

1 Ответ

6 голосов
/ 12 сентября 2010

В шаблоне:

Текущий URL:

${url.current()}

Контроллер и действие:

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