前面我们在Django工程中创建了一个app,对于一个网站来说肯定是需要很多的app,每个app处理不同的URL路径,那么我们的urls.py中就应这样写:

from mydjango import myapp1
from mydjango import myapp2
from mydjango import myapp3
urlpatterns = [
    path('admin/', admin.site.urls),
    ...
    ...
    ...
]

三个app在urls.py中需要引入,多个需要引入多个app的views,在写URL路由的时候每个app又有很多对应关系,这样总感觉不太方便简洁。Django为我们提供了一个路由分发的方法,现在我们只需要修改django工程目录下的urls.py文件:

from django.urls import path,include
urlpatterns = [
    path('myapp1/', include("myapp1.urls")), #URL规则为http://127.0.0.1:8000/myapp1,则会交给myapp1.url这个路径匹配
    path('myapp2/', include("myapp2.urls")), #同上
    path('myapp3/', include("myapp3.urls")),

]

现在我们呢只需要修改各自app中的urls.py文件和views.py文件,在每个app中新建一个urls.py来处理自身app的URL:

app下的views.py文件中是一个简单的index函数,这里不做太多解释。现在访问对应app的url:http://127.0.0.1:8000/myapp1/index/,就可以看到不同的信息。

发表评论

后才能评论