Django 重定向到第二 URL
Django Redirect to Second URL
我正在尝试重定向到自定义 url,因为它在下面进行了编码。然而,可能有损坏的 url。因此,我喜欢在出错的情况下重定向到第二个 url。
有没有办法在出错的情况下重定向到第二个 url?
page = self.request.POST.get('ex_page')
return redirect(page)
您可以使用它来检查 URL 是否解析,然后重定向到辅助页面。
page = self.request.POST.get('ex_page')
try:
resolve(page)
return redirect(page)
except Resolver404:
return redirect(secondary_url)
如果“broken URL”表示无法查找page
,因为它在相关的urls.py
中不存在,那么:
from django.urls.exceptions import NoReverseMatch
...
try:
destination = redirect(page)
except NoReverseMatch:
destination = redirect('homepage')
return destination
我正在尝试重定向到自定义 url,因为它在下面进行了编码。然而,可能有损坏的 url。因此,我喜欢在出错的情况下重定向到第二个 url。
有没有办法在出错的情况下重定向到第二个 url?
page = self.request.POST.get('ex_page')
return redirect(page)
您可以使用它来检查 URL 是否解析,然后重定向到辅助页面。
page = self.request.POST.get('ex_page')
try:
resolve(page)
return redirect(page)
except Resolver404:
return redirect(secondary_url)
如果“broken URL”表示无法查找page
,因为它在相关的urls.py
中不存在,那么:
from django.urls.exceptions import NoReverseMatch
...
try:
destination = redirect(page)
except NoReverseMatch:
destination = redirect('homepage')
return destination