(1)Including other URLconfs
比如一個website項目urls.py, include了其他的urls:
from django.conf.urls import include, url urlpatterns = [ # ... snip ... url(r'^community/', include('django_website.aggregator.urls')), url(r'^contact/', include('django_website.contact.urls')), # ... snip ... ]
注意include之前的正則表達式沒有終止符 $ 而是 /
當調用clude時,把url前邊正則表達式匹配到的chop off(砍掉),剩下的string傳遞到include的urls中進行進一步操作。
另一個例子
from django.conf.urls import include, url from apps.main import views as main_views from credit import views as credit_views extra_patterns = [ url(r'^reports/$', credit_views.report), url(r'^reports/(?P<id>[0-9]+)/$', credit_views.report), url(r'^charge/$', credit_views.charge), ] urlpatterns = [ url(r'^$', main_views.homepage), url(r'^help/', include('apps.help.urls')), url(r'^credit/', include(extra_patterns)), ]
該例中 url: credit/reports/ 對應的方法是credit_views.report