有关Django的url与path函数

匿名 (未验证) 提交于 2019-12-02 23:43:01

首先,我的python工程文件夹是Web_application,在Django的Web应用项目名称叫作learning_log,项目里边有一个应用,名称叫作learning_logs。该项目的目录结构如下图所示:

对该项目进行URL的配置与管理,就是在Web_application\learning_log\urls.py中的urlpatterns列表中配置url,每一个列表项就是一个url函数的调用。比如说,我想在应用learning_logs中定义一个主页,然后通过http://localhost:8000/learning_logs/homepage对这个主页进行访问。实现以上的操作,首先要在Web_application\learning_logs\views.py中定义一个叫homePage的视图,其中视图的网页模板十分简单,只有短短的一句话。定义如下:

 from django.shortcuts import render from django.http.response import HttpResponse  # Create your views here. def homePage(request):     return HttpResponse("<h1>This is home page</h1>")

然后在Web_application\learning_log\urls.py中的urlpatterns列表中添加url配置:

 from django.conf.urls import url from django.contrib import admin from learning_logs.views import homePage#记得导入  urlpatterns = [     url(r'^admin/', admin.site.urls),     url(r'^learning_logs/homepage', homePage) ]

运行项目,也就是输入runserver,就可以用浏览器通过刚刚的URL进行访问。从这一个例子可以发现,如果我们想创建一个网站,并能够在网页上进行访问,要经过以下操作。首先,我们要给这个网站定义视图函数,接着要给这个网站定义一个模板,也就是我们想在浏览器看到的网页效果,最后要给这个网页配置URL,最终才能在浏览器上访问这个网页。

上面的例子中,learning_logs这个应用中只有homePage这一个网站。如果一个应用里面有许多个网站,一个项目里有许多个应用,Web_application\learning_log\urls.py中的urlpatterns列表中的元素就会很多,也会比较麻烦。所以可以使用include函数来配置URL。首先,在应用路径Web_application\learning_logs下面新建一个urls.py的文件,用于配置管理这个应用的URL,这个文件的内容如下:

 from django.conf.urls import url from . import views  urlpatterns = [     url(r'homepage', views.homePage), # 脱字符^可有可无 ]

 from django.conf.urls import url, include#导入了include函数 from django.contrib import admin  urlpatterns = [     url(r'^admin/', admin.site.urls),     url(r'^learning_logs/', include("learning_logs.urls"))#包含learning_logs中的urls ]

通过这样的方式进行URL的配置,也可以进入到http://localhost:8000/learning_logs/homepage

文章来源: https://blog.csdn.net/gxllhdx/article/details/92005198
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!