Oct 27, 2011

Pylons + Routes фикс слэша в конце URL

Если мапить URL’ы вот так:

map.connect('/logs', controller='logs', action='logs')

То при попытке открыть URL /logs/ вместо /logs появится страница 404.

Можно конечно делать так:

map.connect('/logs/', controller='logs', action='logs')
map.connect('/logs', controller='logs', action='logs')

Но это жутко неудобно.

По совету stackoverflow можно обойти эту проблему простым редиректом:

map.redirect('/*(url)/', '/{url}',
             _redirect_code='301 Moved Permanently')

Теперь все запросы оканчивающиеся на слэш будут перенаправляться на адрес без слэша.


Comments

comments powered by Disqus