Próbuję użyć następującej reguły do mapowania adresów URL w django
url(r"^(?P<permalink>[a-zA-Z0-9_-]*)/?$", views.page, name="page"),
To powinno pasować do stron takich jak
- site.com
- site.com/super-awesome-page/
Działa to jednak odwrotne adresy URL dostarczone przeztag szablonu adresu URL brakuje końcowego / tj. „site.com/page”, to one są przechwytywane, ale chcę, aby moje linki wyświetlały się poprawnie na mojej stronie, jak mogę to zrobić poprawnie.
Spodziewałbym się, ponieważ ukośnik końcowy jest zachłanny, dlatego powinien zostać zawarty w odwrotnym adresie URL.
Odpowiedzi:
0 dla odpowiedzi № 1Końcowy ukośnik jest opcjonalny w wyrażeniu regularnym, więc django go nie generuje dla odwrotnego adresu URL.
Najłatwiejszym rozwiązaniem jest prawdopodobnie wykonanieukośnik końcowy nie jest opcjonalny. Przy ustawieniach domyślnych django przekieruje wersję bez ukośnika do wersji ukośnik. Najłatwiej to po prostu ujednolicić.