Django视图View(实验楼学习笔记)
2018-12-07 11:07
232 查看
进入
mysite文件夹,在终端中输入:
[code]$ cd /home/shiyanlou/Code/mysite $ python3 manage.py startapp lib
lib的目录如下:
打开
lib/views.py,输入以下代码:
[code]# lib/views.py from django.http import HttpResponse def index(request): return HttpResponse("Hello, world!")
仅编写视图函数,并不能在Django页面上显示出来。如果想要看到效果,我们需要使用URL来映射到它。
在
mysite/lib目录里新建
urls.py文件,并输入以下代码:
[code]# lib/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
这一步我们将应用
lib里视图函数与URL映射到了一起。
我们来详细讲解一下
path()函数,它共有4个参数:
参数 | 意义 | 是否必须 |
---|---|---|
route | route 是一个匹配 URL 的准则(类似正则表达式)。当 Django 响应一个请求时,它会从 urlpatterns 的第一项开始,按顺序依次匹配列表中的项,直到找到匹配的项。 | 必须 |
view | 当 Django 找到了一个匹配的准则,就会调用这个特定的视图函数,并传入一个 HttpRequest 对象作为第一个参数,被“捕获”的参数以关键字参数的形式传入。 | 必须 |
kwargs | 任意个关键字参数可以作为一个字典传递给目标视图函数。 | 可选 |
name | 为你的 URL 取名能使你在 Django 的任意地方唯一地引用它,尤其是在模板中。这个有用的特性允许你只改一个文件就能全局地修改某个 URL 模式。 | 可选 |
在上面的代码中,
route为空意味着我们可以直接用链接
http://localhost:8000/lib/访问该视图函数,
view=view.index是调用了
view.py中的
index视图,
name为
index代表我们可以在模板中用index来引用返回的变量。
接下来,我们需要向
mysite/mysite/urls.py告知使用应用
lib的视图。
输入以下代码:
[code]# mysite/mysite/urls.py from django.contrib import admin from django.urls import include, path urlpatterns = [ path('lib/', include('lib.urls')), path('admin/', admin.site.urls), ]
实现的原理就是使用了
include()函数,它允许应用其他的URLconfs。
比如使用这个地址进行请求时:
http://localhost:8000/lib/,首先在
mysite/mysite/urls.py中会截断与此项匹配的 URL 部分,也就是
lib/,然后将剩余的字符串发送到 URLconf 以供进一步处理。
到这里,我们就把index视图添加进了URLconf。
让我们来验证下它是否可以正常工作:
[code]$ python3 manage.py runserver
使用浏览器访问
http://localhost:8000/lib/
相关文章推荐
- IOS学习笔记(十一)之IOS开发之表视图(UITableView)的基本介绍(一)
- Pyhton_Django学习笔记(三) 视图和URL配置
- django学习笔记(映射和视图优化总结)
- IOS学习笔记(十一)之IOS开发之表视图(UITableView)的基本介绍(一) 推荐
- IOS学习笔记(十)之UIImageView图片视图的基本概念和使用方法
- Oracle 学习笔记 11 -- 视图 (VIEW)
- 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(六)Picker View视图 学习笔记
- IOS学习笔记(十二)之IOS开发之表视图(UITableView)的相关类,属性与表视图实现学习(二)
- django学习入门四:继续完善view视图,并介绍django的通用视图
- MySQL学习笔记(11)之视图(view)
- django学习笔记006-MVT中的V(视图)的使用及配置
- IOS学习笔记(一)之UITableView表视图
- IOS学习笔记(十)之UIImageView图片视图的基本概念和使用方法
- 【django 学习笔记】02-视图和URL配置
- SpringMVC4 学习笔记(六)【视图解析器ViewResolver】
- IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法
- IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法
- Laravel-学习笔记-视图(View)
- UI学习笔记---第十天UITableView表视图编辑
- [转]IOS 学习笔记(8) 滚动视图(UIScrollView)的使用方法