Django url 管理之 include

当 Django 项目有多个 app 的时候,把所有视图函数都放到项目文件夹的 urls.py 来管理将会是一件比较烦杂的事情,我们可以在各自 app 的文件夹中创建 urls.py 文件来管理该 app 下的 url 和 视图函数的映射关系。

比如,我们在 myApp 文件夹里创建一个 urls.py 来管理 myApp 的视图函数,现在文件结构目录如下:

Django url 管理之 include_第1张图片
文件结构

(注意:tutorial/urls.py 是系统自带的 url 管理文件)

首先我们编写两个 myApp 的视图函数:

from django.http.response import HttpResponse  

def test1(request):  
    return HttpResponse("

测试页面1

") def test2(request): return HttpResponse("

测试页面2

")

编写 tutorial/urls.py :

from django.conf.urls import url, include # 引入 include 方法
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    # 碰到 myApp/ 的 url 将交由 myApp.urls 来处理
    url(r'^myApp/', include("myApp.urls")) 
]

编写 myApp/urls.py:

from django.conf.urls import url
from myApp.views import test1, test2

urlpatterns = [
    url(r'^test1/', test1),
    url(r'^test2/', test2),
    ]

打开:http://127.0.0.1:8000/myApp/test1/ 和 http://127.0.0.1:8000/myApp/test2/ ,
就能看到相关的页面了。

你可能感兴趣的:(Django url 管理之 include)