Django:如何将url()作为“urlpatterns”列表的最后一个元素?

2024-10-01 02:37:46 发布

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

我有一个web应用程序(django用于后端,reactjs用于前端),带有urlpatterns

urlpatterns = [

# API Notifications
url(r'^api/notification/v0/', include(notification_router.urls)),
url(r'^api/notification/v0/mark_all_as_read/$', mark_all_as_read),
url(r'^api/notification/v0/unread_count/$',
    unread_count),

# etc 
]

接下来,因为这是react应用程序,我将url模式设置为捕获所有请求(排除有用的请求)并使用react router将其重定向到根模板:

urlpatterns += url(r'', cache_page(settings.PAGE_CACHE_SECONDS)(RootView.as_view()), name='customer-root'),

在本地服务器上,它运行得很好。你知道吗

但是,当我尝试部署这个应用程序时,很少有其他进程(collectstatic,例如)更改urlpatterns,并将新的url添加到urlpatterns列表的末尾(在customer-rooturl之后)。你知道吗

因此,客户端使用customer-root视图模板的html代码来代替静态文件(css/js/etc)。你知道吗

问题是:如何将我的customer-rooturl模式作为urlpatterns列表的最后一个保证元素?即使另一个进程在部署时更改urlpatterns。你知道吗


Tags: api应用程序urlreadascountetcnotification