Как перенаправить URL на определенный URL Django Regex
В моем URLs.py я устанавливаю URL следующим образом
url(r'^mobile/$', views.mobile, name='mobile')
Переход на localhost:8000/mobile
работает как ожидалось, но если ввести URL: localhost:8000/mobile/hello/world/234234hjhf8sc3
он должен перенаправить на localhost:8000/mobile
однако этого не происходит, потому что мой regex неверен (я не уверен)
Как я могу это сделать/какой правильный regex для этого?
Другой пример: localhost:8000/mobile/send/help/as792lp
должен перенаправлять на
localhost:8000/mobile
Вы можете работать с RedirectView
[Django-doc] для перенаправления любого URL, начинающегося с mobile/
на mobile
представление:
from django.urls import reverse_lazy
from django.views.generic.base import RedirectView
url(r'^mobile/$', views.mobile, name='mobile')
url(r'^mobile/.+$', RedirectView.as_view(url=reverse_lazy('mobile')))
Примечание: Начиная с версии django-3.1,
url(…)
[Django-doc] является deprecated в пользуre_path(…)
[Django-doc]. Кроме того, был введен новый синтаксис для путей с конвертерами путей: вы используетеpath(…)
[Django-doc] для этого.