Django开发个人网站

Django url 管理之 include

2017-05-08  本文已影响51人  SingleDiego

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

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

文件结构

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

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

from django.http.response import HttpResponse  

def test1(request):  
    return HttpResponse("<h1>测试页面1</h1>")  

def test2(request):  
    return HttpResponse("<h1>测试页面2</h1>") 

编写 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/
就能看到相关的页面了。

上一篇 下一篇

猜你喜欢

热点阅读