Django整理(二) - 视图和模板的初步使用
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整理(二) - 视图和模板的初步使用的更多相关文章
- Django 基础篇(二)视图与模板
视图 在django中,视图对WEB请求进行回应 视图接收reqeust对象作为第一个参数,包含了请求的信息 视图就是一个Python函数,被定义在views.py中 #coding:utf- fro ...
- django学习2 视图和模板
1 编写更多的视图 polls/views.py def detail(request, question_id): return HttpResponse("You're looking ...
- Part 3:视图和模板--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- 五、Django之视图和模板-Part 3
一.概述 一个视图就是一个页面,通常提供特定的功能,使用特定的模版.列如:在一个博客应用中,你可能会看到下列视图: 博客主页:显示最新发布的一些内容 每篇博客的详细页面:博客的永久链接 基于年的博客页 ...
- Django - 环境搭建、url、视图、模板、标签、过滤器
(一).简介 简介就不多说了,网上的内容一大堆.总结来说,django是走大而全的路线,写项目超级快,几乎什么都为你考虑到了,你就乖乖照着它的格式来写就行了. 这里来一些基本认知: web应用框架(w ...
- 【python】-- Django路由系统(网址关系映射)、视图、模板
Django路由系统(网址关系映射).视图.模板 一.路由系统(网址关系映射) 1.单一路由对应: 一个url对应一个视图函数(类) urls.py: url(r'^test', views.test ...
- Django基础之视图(views)层、模板层
目录 Django基础之视图(views)层.模板层 JsonResponse 向前端返回一个json格式字符串的两种方式 重写Django中的json的某个方法 form表单上传文件 FBV与CBV ...
- Django基础三之路由、视图、模板
Django基础三之路由.视图.模板 目录 Django基础三之路由.视图.模板 1. Django 请求和返回周期 1.1 路由层之路由匹配 1.2 有名分组 1.3 无名分组 2. 反射解析 3. ...
- 第一个Django应用 - 第三部分:Django视图和模板
一.概述 一个视图就是一个页面,通常提供特定的功能,使用特定的模板.例如:在一个博客应用中,你可能会看到下列视图: 博客主页:显示最新发布的一些内容 每篇博客的详细页面:博客的永久链接 基于年的博客页 ...
随机推荐
- 07.SpringMVC之静态资源
如何你的DispatcherServlet拦截 *.do这样的URL,就不存在访问不到静态资源的问题.如果你的DispatcherServlet拦截"/",拦截了所有的请求,同时对 ...
- Hibernate的一级缓存和二级缓存
Fist level cache: This is enabled by default and works in session scope. Read more about hibernate f ...
- 战胜了所有对手,却输给了时代。MVVM--jQuery永远的痛。
前言 第二次浏览器战争中,随着以 Firefox 和 Opera 为首的 W3C 阵营与 IE 对抗程度的加剧,浏览器碎片化问题越来越严重,不同的浏览器执行不同的标准,对于开发人员来说这是一个恶梦.为 ...
- Android手机 自动批量发朋友圈
做了各种对比之后,还是这个微商工具最好用
- JDK和环境配置,eclipse安装与使用
本博客部分参照https://blog.csdn.net/PGY0000/article/details/79256720 (记住要尊重别人的劳动产品) 原博客给的链接和后面的安装过程有点不一样,不能 ...
- 1.3w字,一文详解死锁!
死锁(Dead Lock)指的是两个或两个以上的运算单元(进程.线程或协程),都在等待对方停止执行,以取得系统资源,但是没有一方提前退出,就称为死锁. 1.死锁演示 死锁的形成分为两个方面,一个是使用 ...
- SVN无法查看最近日志和提交记录
现象: 使用SVN查看最近的提交记录日志时,最近总是无法显示出全部的日志内容,只能显示到几天之前的日志.就算是自己刚提交的代码也是无法没有记录的. 解决方式:右键选择TortoiseSVN中的&quo ...
- 数据库实验sql代码 myemployees 以及mygirl
/* Navicat Premium Data Transfer Source Server : mysql Source Server Type : MySQL Source Server Vers ...
- C++ 输入一行未知个数的整数
C++ 输入一行未知个数的整数 代码: #include<iostream> #include<vector> using namespace std; int main() ...
- layui日期选择无效的问题
解决layui引入时间控件无效的问题 - 简书 (jianshu.com) 原因是因为在使用日期选择器的时候,layui源码里有一个laydate.css文件找不到 将下载的文档文件里的css文件夹, ...