Строка запроса обратного запроса обратно к определенному шаблону

AverageJoe9000 спросил: 28 апреля 2018 в 08:47 в: python

У меня есть маршрут, настроенный как в моем приложении:

config.add_route('book', 'book/{id}).

Когда я делаю запрос GET, например localhost:8000/book/2, я хотел бы указать маршрут шаблон, подобный определенному в config, поэтому выход будет 'book/{id}'.

Я пробовал регулярное выражение, но, возможно, есть более эффективные способы.

Что бы было лучший способ достичь этого?

1 ответ

Есть решение
Steve Piercy ответил: 28 апреля 2018 в 04:49

Используйте request.matched_route.pattern. Я нашел его, используя pyramid_debugtoolbar, выполнив поиск "route" и нашел его на вкладке "Запросы Vars" с указанными атрибутами.

AverageJoe9000 ответил: 28 апреля 2018 в 04:43
В некотором роде мой request.matched_route - None.
Steve Piercy ответил: 29 апреля 2018 в 06:12
Какой URL-адрес вы посетили? None подразумевает, что вы не посетили /book/2, или как примечание в ссылке в моем первоначальном комментарии выше: "Если шаблон URL-адреса маршрута не соответствует, matched_route объект, прикрепленный к запросу, будет None."
AverageJoe9000 ответил: 29 апреля 2018 в 06:17
Да ты прав. Мне удалось сделать запрос дважды, и этот вытертый шаблон вышел. Спасибо!