几分钟让你快速了解Django------Ⅲ

创建网页:学习笔记主页

1. 映射URL

当前,基础URL(http://localhost:8000/)返回默认的Django网站,让我们知道正确地建立了项目,我们将修改这一点,将这个基础URL映射到 “学习笔记”的主页。打开文件learning_log/url.py,执行以下代码:

# from django.conf.urls import include, url
# from django.contrib import admin

# urlpatterns = [
	# url(r'^admin/', include(admin.site.urls)),
	url(r'', include('learning_log.urls',namespace = 'learning_logs')),
]

实参namespace让我们能够将learning_logs的URL区分开来,这在项目开始扩展时很有帮助。

默认的urls.py还包含在文件夹learning_log中,现在我们需要在文件夹learning_logs中创建另一个urls.py文件:

"""定义learning_logs的URL模式"""
from django.conf.urls import url
from . import views
urlpatterns = [
	# 主页
	url(r'^$', views.index, name = 'index'),
]

代码的第三行的句点让Python从当前的urls.py模块所在的文件夹中导入视图。在这个模块中,变量urlpatterns是一个列表,包含可在应用程序learning_log中请求的网页,实际的URL模式时一个对函数url() 的调用,这个函数接受三个实参:

① 正则表达式:看看r’^$’,其中的r让python将接下来的字符串视为原始字符串,而引号告诉python正则表达式始于和终于何处。脱字符( ^ )让python查看字符串的开头,而美元符号让python查看字符串的末尾,如果请求的URL不与任何URL模式匹配,Django将返回一个错误页面

② 第二个实参views.index指定了要调用的视图函数,请求的URL与前面的正则表达式匹配时,,Django将调用views.index

③ 将这个URL模式的名称指定为index,让我们能够在代码的其他地方引用它,每当需要提供到这个主页的链接时,我们都将使用这个名称,而不编写URL

2.编写视图

找到文件learning_logs/views.py,执行以下代码:

from django.shortcuts import render
# 在这里创建视图

def index(request):
	"""学习笔记主页"""
	return render(request, 'learning_logs/index.html')

URL请求与我们刚才定义的模式匹配时,Django将在文件views.py中查找函数index(),再将请求对象传递给这个视图函数。这里向函数render()提供了两个实参:原始请求对象以及一个可用于创建网页的模板。

3. 编写模板

在文件夹learning_logs中新建一个文件夹,并将其命名为templates,在文件夹templates中再创建一个新的文件夹,并将其命名为learning_logs,在这个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>  # 用户可用 “学习笔记来做什么”

现在你调用这个项目的基础URL------http://localhost:8000/,你将看到刚刚创建的网页,也就是以上编辑的内容。创建网页的过程看起来可能很复杂,但是将URL、视图和模板分离的效果实际上很好,这让我们能够考虑项目的不同方面。

今天的分享就到这里啦,如果你有follow me一步一步的做到这里,我觉得你是可造之才,相信有些过程已经慢慢得熟练了起来,在后面的模块和页面制作过程中你将会如鱼得水。在下一章节中我将介绍其他网页的制作和设计,敬请期待…
感谢你的阅读💕💕💕

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值