参考书籍:《Python编程从入门到实践》—Eric Matthes
使用Django创建网页的过程通常分为三个阶段:定义URL、编写视图和编写模板。
- URL模式描述了URL是如何设计的,让Django知道如何将浏览器请求与网站URL匹配,以确定返回哪个网页。
- 每个URL都被映射到特定的视图——视图函数获取并处理网页所需的数据。视图函数通常调用一个模板,后者生成浏览器能够理解的网页
映射URL
URL(Uniform Resource Locator,统一资源定位符)是WWW的统一资源定位标志。
组成:资源类型、存放资源的主机域名、资源文件名。(或者协议、主机、端口、路径)
目前我们的URL(https://localhost:8000/)映射到的是Django网站。所以我们现在需要将它映射到我们自己的主页。
打开learning_logs目录下的urls.py文件可以看到:
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
]
- 前两行导入了为项目和管理网站管理URL的函数和模块
- urlpatterns变量包含项目中应用程序的URL
- admin.site.urls是一个模块,定以了可在管理网站中请求的所有URL
我们在urlpatterns列表里的末尾加上
url(r'', include(('learning_logs.urls'), namespace='learning_logs')),
用来包含模块learning_logs.urls。参数namespace的作用是将learning_logs的URL与项目其他URL区分开。
现在我们需要在文件夹learning_logs中创建另一个urls.py文件(注意目录!!!)
from django.conf.urls import url
from . import views
urlpatterns = [
#主页
url(r'^$',views.index,name='index'),
]
-
导入url的目的需要使用它来将URL映射到视图
-
句点让Python从当前的urls.py的文件夹中导入视图
-
变量urlpatterns是一个列表,包含可在应用程序learning_logs中请求的网页
URL模式实则是对函数url()的一个调用。url()接受三个实参。第一个是正则表达式,第二个实参指定了要调用的视图函数。第三个参数将这个URL模式的名称指定为index,让我们能够在代码的其他地方引用它。
正则表达式(regex)
r'^$':
- r的作用是让python将接下来的字符串视为原始字符串
- 脱字符^让python查看字符串的开头
- $让python查看字符串的结尾。
这个表达式的意思是只查找开头和末尾之间没有任何东西的URL即基础URL(http://localhost:8000/)
编写视图
视图函数接受请求中的信息,准备好生成网页所需的数据,再将这些数据发送给浏览器。这通常是使用定义了网页是什么样的模板实现的。
打开learning_logs目录下的views.py
目前只导入了函数render(),它根据视图提供的数据渲染响应:
from django.shortcuts import render
为主页编写视图
def index(request):
"""学习笔记的主页"""
return render(request,'learning_logs/index.html')
URL请求与我们刚才定义的模式匹配时,Django将在文件views.py中查找函数index(),再将请求对象传递给这个视图函数。在这里,我们不需要处理任何数据,因此这个函数只包含调用 render()的代码。这里向函数render()提供了两个实参:原始请求对象以及一个可用于创建网页的模板
编写模板
在文件夹learning_logs中新建一个文件夹,并将其命名为templates。在文件夹templates中,再新建一个文件夹,并将其命名为learning_logs。
即learning_logs->templates->learning_logs
新建文件index.html
<p>Learning Log</p>
<p>Learning Log helps you keep track of your learning, for any topic you're learning about.</p>
这里定义了两个锻炼:第一个充当标题,第二个阐述了用户可使用学习笔记做什么。
Django网页创建三部曲
本文详述了使用Django框架创建网页的三个核心步骤:定义URL模式、编写视图函数及创建模板。通过实例解析,展示了如何将URL映射到视图,以及视图如何调用模板生成网页。
4245

被折叠的 条评论
为什么被折叠?



