Маршруты Python - я пытаюсь установить расширение формата, но это не удается - PullRequest
1 голос
/ 07 сентября 2010

Я пытаюсь настроить маршруты и включить необязательное расширение 'format', чтобы указать, должна ли страница загружаться как стандартная HTML-страница или внутри лайтбокса.

После этого http://routes.groovie.org/setting_up.html#format-extensions, Я придумал:

map.connect('/info/test{.format:lightbox}', controller='front', action='test')

class FrontController(BaseController):
    def test(self, format='html'):
        print format

Это не удалось. Мой маршрут испорчен, и URL-адрес выглядит как /front/test, а не /info/test. Он возвращается к /{controller}/{action}.

Как мне разрешить расширение формата? : /

Ответы [ 2 ]

1 голос
/ 07 сентября 2010

Как правило:

http://pylonsbook.com/en/1.1/urls-routing-and-dispatch.html#pylons-routing-in-detail

Маршруты затем ищут каждый из маршрутов в карте маршрутов от сверху вниз , пока не найдет маршрут, которыйсоответствует URL.Поскольку сопоставление выполняется сверху вниз, вам всегда рекомендуется размещать свои собственные маршруты ниже тех, которые предоставляет Pylons, чтобы не допустить случайного вмешательства в поведение Pylons по умолчанию.Говоря в более общем плане, вы всегда должны размещать свои наиболее общие маршруты в нижней части карты маршрутов, чтобы они случайно не были сопоставлены перед более конкретным маршрутом, расположенным ниже на карте маршрутов.

0 голосов
/ 07 сентября 2010

Первое, что я проверю, это то, что вы используете маршруты 1.12.Несколько дистрибутивов все еще находятся на 1.11, который не поддерживает расширения формата.

Во-вторых, проверьте порядок, в котором определены ваши маршруты.Это имеет значение.

...