视图

后台管理页面做好了,接下来就要做公共访问的页面了。当我们刚刚在浏览器中输入 http://127.0.0.1:8000/admin/ 之后,浏览器显示出了后台管理的登录页面,那有没有同学想过这个服务器是怎么给我们找到这个页面并返回呢?/admin/是我们想要请求的页面,服务器在收到这个请求之后,就一定对应着一个处理动作,这个处理动作就是帮我们产生页面内容并返回回来,这个过程是由视图来做的。

对于django的设计框架MVT,用户在URL中请求的是视图,视图接收请求后进行处理,并将处理的结果返回给请求者。

使用视图时需要进行两步操作:

* 1.定义视图函数
* 2.配置URLconf

1.定义视图

视图就是一个Python函数,被定义在views.py中。

视图的必须有一个参数,一般叫request,视图必须返回HttpResponse对象,HttpResponse中的参数内容会显示在浏览器的页面上。

打开booktest/views.py文件,定义视图index如下

from django.http import HttpResponse

def index(request):
return HttpResponse("index")

2.配置URLconf

查找视图的过程

请求者在浏览器地址栏中输入url,请求到网站后,获取url信息,然后与编写好的URLconf逐条匹配,如果匹配成功则调用对应的视图函数,如果所有的URLconf都没有匹配成功,则返回404错误。

一条URLconf包括url规则、视图两部分:

  • url规则使用正则表达式定义。
  • 视图就是在views.py中定义的视图函数。

需要两步完成URLconf配置:

  • 1.在应用中定义URLconf
  • 2.包含到项目的URLconf中

在booktest/应用下创建urls.py文件,定义代码如下:

from django.conf.urls import url
from booktest import views
urlpatterns = [
url(r'^$', views.index),
]

包含到项目中:打开test1/urls.py文件,为urlpatterns列表增加项如下:

url(r'^', include('booktest.urls')),

test1/urls.py文件完整代码如下:

from django.conf.urls import include, url
from django.contrib import admin urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('booktest.urls')),
]
 

最新文章

  1. ASP.NET Core Loves JavaScript
  2. 【Java每日一题】20161020
  3. 【代码笔记】iOS-背景色随机显示
  4. HTMl5/CSS3/Javascript 学习推荐资源
  5. Idea_从Eclipse转Intellij IDEA
  6. 正则表达式入门教程&&经典Javascript正则表达式(share)
  7. Linux系统上安装mysql数据库
  8. openCV 直方图统计
  9. c语言的笔记
  10. C语言基础03
  11. Java NIO 转载
  12. javascript 函数 add(1)(2)(3)(4)实现无限极累加 —— 一步一步原理解析
  13. Java中如何引入结对编程
  14. Sum of odd and even elements
  15. 什么是C语言。C语言入门
  16. Urozero Autumn 2016. NCPC 2016
  17. #161: 给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。 你的任务就是检测矩阵是否符合条件
  18. centos平台基于snort、barnyard2以及base的IDS(入侵检测系统)的搭建与测试及所遇问题汇总
  19. GItlab作CI/CD时,想快点,有啥招?
  20. Android Error:Execution failed for task ':app:compileDebugJavaWithJavac' 解决方案

热门文章

  1. boost::program_options 解析命令行参数
  2. BOM--location对象、history对象
  3. 【高软作业3】:原型化系统 DevTools
  4. WorkerServices构建Windows服务
  5. P1069 微博转发抽奖
  6. memset函数总结
  7. Python测试进阶——(1)安装Python测试相关模块
  8. Docker 学习之mysql与redis(二)
  9. PHPstudy2018 后门简单使用
  10. 浅谈MSF渗透测试