Django:暂时将所有url重定向到一个vi

2024-04-27 17:31:00 发布

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

我正在建设网站,并认为这将是一个很好的有一些维护页面,我可以重定向用户,如果需要的话。在

如何开始将所有请求重定向到一个特定视图?我正在使用Constance在我的管理视图中使用维护开关(只是bool值)。它的价值可以在整个项目中使用。在

我已经准备了urlpatterns的另一个列表,但无法确定如何动态更改它们,以便重定向工作。在

maintenance_urlpatterns = [
    url(r'^$', views.maintenance, name='maintenance'),
]

这是来自app的urls.py文件,而不是我要单独处理的项目文件。在

我还考虑过修改base.html模板并以这种方式呈现“维护页面”,但我认为这是一个非常糟糕的解决方案。在

编辑:澄清。我的主要问题不是如何编写将捕获所有流量的urlpattern,而是如何动态地编辑它们以响应Constance配置更改。所以我可以在管理中切换。在


Tags: 文件项目用户视图constance编辑网站动态
1条回答
网友
1楼 · 发布于 2024-04-27 17:31:00

您问题中的regex只匹配/(站点的根目录)。如果您想捕获所有内容,只需使用^。每个URL都有一个开头,因此^总是匹配的。在

url(r'^', views.maintenance, name='maintenance')

当然,这取决于您的正常urlpatterns是否以某种方式被禁用。听起来好像你已经把它遮住了。在

相关问题 更多 >