Django 1.11
我正在读“Django的两个勺子”。 即关于多个设置文件和多个需求文件。
因此,建议将base.py,local.py和production.py。
分开对于base.py:
INSTALLED_APPS += ("debug_toolbar", )
让我感到困扰的是Django Debug Toolbar还需要添加一些urls.py:
from django.conf import settings
from django.conf.urls import include, url
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
url(r'^__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
http://django-debug-toolbar.readthedocs.io/en/stable/installation.html#urlconf
那就是我们应该接受这种混合的调试和生产概念,或者将它们分成多个文件。
我调查了这个问题。例如,这个链接: Django: Multiple url patterns starting at the root spread across files
但我仍然有点怀疑。
你能给我一个建议吗:在urlpatterns中如何将这个Django Debut工具栏与生产分开是最好的做法。
答案 0 :(得分:0)
此方法没有任何问题,因为您只有一个URL conf文件将存在于项目根目录中。因此,项目的if settings.DEBUG:
文件中的urls.py
部分对我来说很好。
但是,如果您想要完全分隔local
和production
网址,那么您可以这样做:
urls
创建一个python模块(就像您对设置所做的那样)base_urls.py
,local_urls.py
和production_urls.py
base_urls
内,你应该把"全球"本地和生产都可以使用的网址。在local_urls
内放置任何其他本地网址(如django-debug-toolbar
)。最后,在你的生产中......呃生产网址。当然,local_urls.py
和production_urls.py
文件的顶部应该有from .base_urls import *
。settings/local.py
文件中的ROOT_URL_CONF
设置更改为"project.urls.local_urls"
,并在settings/production.py
文件中更改{再次} ROOT_URL_CONF
设置为"project.urls.production_urls"
。现在,每个环境都有单独的urls
个文件。