Я искал способ сделать необязательный слеш в корне блока PathPrefixRoute необязательным.
Если у вас есть, скажите:
from webapp2_extras.routes import RedirectRoute, PathPrefixRoute
from webapp2 import Route
app = webapp2.WSGIApplication([
PathPrefixRoute('admin', [
RedirectRoute('/', handler='DashboardHandler', name='admin-dashboard', strict_slash=True),
RedirectRoute('/sample-page/', handler='SamplePageHandler', name='sample-page', strict_slash=True),
]),
])
Вы сможете получить доступ к /admin/
, но не /admin
.
Поскольку я не мог найти лучшего решения, я добавил redirect_to_name
к дополнительному маршруту, например:
from webapp2_extras.routes import RedirectRoute, PathPrefixRoute
from webapp2 import Route
app = webapp2.WSGIApplication([
Route('admin', handler='DashboardHandler', name='admin-dashboard'),
PathPrefixRoute('admin', [
RedirectRoute('/', redirect_to_name='admin-dashboard'),
RedirectRoute('/sample-page/', handler='SamplePageHandler', name='sample-page', strict_slash=True),
]),
])
Я заинтересован в лучших решениях этой проблемы.
Должен ли я пойти на решение Stun и просто не использовать RedirectRoute?