以url模式提升Http404

2024-04-19 11:17:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图覆盖django配置文件中的url来引发404,而不是传递给视图。在

我要找的东西大致如下:

url(r'^profiles/$', lamdba x: raise Http404)

但上面的方法行不通。这种事可能吗?在

我知道我可以编写一个引发404的新视图,但是如果可以直接在url模式中实现,我就不想这样了。在

编辑:具体来说,我用上面的例子得到invalid syntax (urls.py, line 29)。在


Tags: django方法视图url编辑配置文件模式profiles
3条回答

一个有效的例子。。在

在你的网址.py添加:

from django.views.defaults import page_not_found

urlpatterns = patterns('',
    url(r'^profiles/$', page_not_found),
)

Django 1.9开始,page_not_found视图现在“接受第二个参数,即触发错误的异常”。因此,Christoffer提出的上述解决方案需要一些细微的更改:

from django.views.defaults import page_not_found

urlpatterns = patterns('',
  url(r'^profiles/$', page_not_found, {'exception': Exception('Not Found')}),
)

希望这有帮助。在

只需使用视图^{}。在

相关问题 更多 >