Django中的视图

· Django使用视图来编写web应用的业务逻辑

· Django的视图也就是一个函数,可称为视图函数

· 视图定义在应用的view.py文件中

· 视图需要绑定一个URL地址(路由),才能被Django框架找到并调用执行

一、视图的初步使用

需求:编写视图并配置URL(路由),实现一个显示界面

1. 需求:当浏览器中访问URL地址 http://127.0.0:8000/users/index时,显示hello django信息

2. 实现:

i. 需要编写一个视图函数

ii. 针对该视图配置访问路由

1. 创建视图

打开刚创建的users模块,在views.py中编写视图代码。

关于视图的说明:

· 关于视图

i. 视图不是由开发者主动调用的,而是由Django框架调用

ii. 当Django接收到请求时,会进行URL正则匹配,调用对应的视图

iii. 调用视图时,Django会把请求信息封装为一个HttpRequest对象,并作为视图的第一个参数传入

· 关于视图的参数

i. 视图的第一个参数必须定义,名字可自定义,但习惯命名为request,类型为HttpRequest

ii. 缺少了该参数,Django在调用视图时,将无法传入Httprequest对象

· 关于视图的返回值

i. 视图必须返回一个HttpResponse对象 (或其子类的对象)

ii. HTTPRequest请求对象由Django创建,HttpResponse响应对象由开发人员创建

2. 配置URL(路由)  

· 在项目下的urls.py文件中进行url路由配置如下:

3. 在浏览器中测试

在浏览器中输入网址 http://127.0.0.1:8000/users/index,确认是否执行了视图的逻辑,返回hello django 信息

二、模板的初步使用

1. 在项目的 templates 目录下创建一个模板文件

2. 在视图函数中,使用 render() 方法渲染模板,得到 HttpResponse 对象并返回

3. 额外项目配置

【注意】针对命令行创建的项目,需要额外手动创建模板目录,并进行配置;如果Pycharm创建的项目则无需额外操作

3.1 在项目根目录下创建 templates 模板目录,后续开发中模板文件会放在此目录下

3.2 在 setting.py 项目配置文件中,作如下配置:

Django整理(二) - 视图和模板的初步使用的更多相关文章

  1. Django 基础篇(二)视图与模板

    视图 在django中,视图对WEB请求进行回应 视图接收reqeust对象作为第一个参数,包含了请求的信息 视图就是一个Python函数,被定义在views.py中 #coding:utf- fro ...

  2. django学习2 视图和模板

    1 编写更多的视图 polls/views.py def detail(request, question_id): return HttpResponse("You're looking ...

  3. Part 3:视图和模板--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

  4. 五、Django之视图和模板-Part 3

    一.概述 一个视图就是一个页面,通常提供特定的功能,使用特定的模版.列如:在一个博客应用中,你可能会看到下列视图: 博客主页:显示最新发布的一些内容 每篇博客的详细页面:博客的永久链接 基于年的博客页 ...

  5. Django - 环境搭建、url、视图、模板、标签、过滤器

    (一).简介 简介就不多说了,网上的内容一大堆.总结来说,django是走大而全的路线,写项目超级快,几乎什么都为你考虑到了,你就乖乖照着它的格式来写就行了. 这里来一些基本认知: web应用框架(w ...

  6. 【python】-- Django路由系统(网址关系映射)、视图、模板

    Django路由系统(网址关系映射).视图.模板 一.路由系统(网址关系映射) 1.单一路由对应: 一个url对应一个视图函数(类) urls.py: url(r'^test', views.test ...

  7. Django基础之视图(views)层、模板层

    目录 Django基础之视图(views)层.模板层 JsonResponse 向前端返回一个json格式字符串的两种方式 重写Django中的json的某个方法 form表单上传文件 FBV与CBV ...

  8. Django基础三之路由、视图、模板

    Django基础三之路由.视图.模板 目录 Django基础三之路由.视图.模板 1. Django 请求和返回周期 1.1 路由层之路由匹配 1.2 有名分组 1.3 无名分组 2. 反射解析 3. ...

  9. 第一个Django应用 - 第三部分:Django视图和模板

    一.概述 一个视图就是一个页面,通常提供特定的功能,使用特定的模板.例如:在一个博客应用中,你可能会看到下列视图: 博客主页:显示最新发布的一些内容 每篇博客的详细页面:博客的永久链接 基于年的博客页 ...

随机推荐

  1. HbaseWAL

    1.WAL意为 Write Ahead Log ,类似MySQL中的binlog,用来做灾难恢复之用,HLog记录数据的所有变更,一旦数据修改,就可以从Log中进行恢复. Hbase采用类LSM的架构 ...

  2. 乌班图安装redis问题

    ot@DESKTOP-5382063:/usr/local/redis/redis-3.0.4# make\ > cd src && make all make[1]: Ente ...

  3. 【Tools】Anaconda Operaction

    专为数据科学和机器学习工作流程而设计,是一个开源包管理器,环境管理器,以及Python和R编程语言的分发.它通常用于大规模数据处理,科学计算和预测分析.pip install xxx ,在特定环境里使 ...

  4. js在不同页面的导航背景不同 (设置网站公共头的导航)

    <script type="text/javascript" src="js/jquery.min.js"></script> < ...

  5. C#多线程开发-线程同步 02

    上一篇文章主要带领大家认识了线程,也了解到了线程的基本用法和状态,接下来就让我们一起学习下什么是线程同步. 线程中异常的处理 在线程中始终使用try/catch代码块是非常重要的,因为不可能在线程代码 ...

  6. Python中的列表、元组、字典、字符串及切片操作

    我们引入一个新的概念:数据结构 数据结构是通过某种方式组织在一起的数据元素的集合,这些数据元素可以是数字或字符,甚至可以是其他数据结构,在python中,最基本的数据结构是序列,序列中的每个元素匾被分 ...

  7. 循环神经网络LSTM RNN回归:sin曲线预测

    摘要:本篇文章将分享循环神经网络LSTM RNN如何实现回归预测. 本文分享自华为云社区<[Python人工智能] 十四.循环神经网络LSTM RNN回归案例之sin曲线预测 丨[百变AI秀]& ...

  8. redis存取数据list

    登录redis客户端 一.存取数据 1.左右添加数据 2.读取数据lrange 3.左右固定弹出一个元素 4.列表中个数 5.删除元素值为value的元素 count 值要自己给定: 6.获取和设置指 ...

  9. 远程桌面无法复制粘贴 rdpclip.exe

    在一些意外情况下,远程桌面无法与桌面共享复制内容,这时候需要杀掉一个进程并重新启动 远程桌面复制之后,无法在本地桌面粘贴   在远程桌面中右键点击,选择启动任务管理器   找到一个进行rdpclip. ...

  10. 升级到windows10之后的骚操作,安装debian,centos7,支持linux、docker、kubectl命令

    修改Windows10默认字体和图标很大 打开Hyper-V Windows10下载Docker Desktop https://www.docker.com/products/docker-desk ...