Django反向和url默认而不是NoReverseMatch

时间:2011-12-08 15:31:57

标签: django

是否可以设置默认URL,无论何时无法找到反向匹配,都会使用该URL?我的想法是,如果在生产中存在拼写错误,我想显示类似于404或描述性错误页面的内容,而不是获取NoReverseMatch异常。

2 个答案:

答案 0 :(得分:1)

我猜您可以捕获异常并选择您的默认网址

try:
    url = reverse('missing')
except NoReverseMatch:
    url = default

答案 1 :(得分:1)

templatetag url引发异常。你可以在代码中看到:

https://code.djangoproject.com/browser/django/trunk/django/templatetags/future.py#L117

但是,您可以创建其他模板标签(复制并粘贴90%),不会引发任何内容并“显示类似于404或描述性错误页面的内容,而不是获取NoReverseMatch异常。”