django 类视图的使用方法详解


Posted in Python onJuly 24, 2019

 前言

当我们在开发一个注册模块时。浏览器会通过get请求让注册表单弹出来,然后用户输完注册信息后,通过post请求向服务端提交信息。这时候我们后端有两个视图函数,一个处理get请求,一个处理post请求。两个视图函数都是不同的名字。

但是随着开发的进行。当你想要找到注册模块的这两个视图,太麻烦了。如果这两个视图函数能放在一起,归成一个类,作为注册模块的类。这样日后的维护将会方便很多。这时候,django的类视图就能实现这个功能了。

对比

在没有类视图前,视图是这样的:

def get_register_page(request):
  return render(request,"注册页面.html")

def post_register_page(request):
  # 处理请求,把信息写进数据库
  return HttpResponse("注册成功")

有了django的类视图,视图是这样的:

class register(View):
  def get(self,request):
    return render(request,"register.html")

  def post(self,request):
    title = request.POST.get("name")
    content = request.POST.get("password")
    return HttpResponse("注册成功")

别漏了要在项目的urls设置:

url(r'^register$',views.register.as_view())

注意,as_view()是用来分发请求方法的。可以把同一个页面的不同请求方法分发给不同的视图来执行。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中比较特别的除法运算和幂运算介绍
Apr 05 Python
Python读取网页内容的方法
Jul 30 Python
Python设计模式编程中解释器模式的简单程序示例分享
Mar 02 Python
Python第三方库的安装方法总结
Jun 06 Python
K-近邻算法的python实现代码分享
Dec 09 Python
Python OpenCV处理图像之图像直方图和反向投影
Jul 10 Python
基于python指定包的安装路径方法
Oct 27 Python
在Python运行时动态查看进程内部信息的方法
Feb 22 Python
对python3 Serial 串口助手的接收读取数据方法详解
Jun 12 Python
Python 音频生成器的实现示例
Dec 24 Python
PyInstaller运行原理及常用操作详解
Jun 13 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
django如何实现视图重定向
Jul 24 #Python
python字符串分割及字符串的一些常规方法
Jul 24 #Python
django使用haystack调用Elasticsearch实现索引搜索
Jul 24 #Python
python 判断三个数字中的最大值实例代码
Jul 24 #Python
Django Celery异步任务队列的实现
Jul 24 #Python
python如何统计代码运行的时长
Jul 24 #Python
Django时区详解
Jul 24 #Python
You might like
PHP不用递归遍历目录下所有文件的代码
2014/07/04 PHP
smarty模板判断数组为空的方法
2015/06/10 PHP
php去掉文件前几行的方法
2015/07/29 PHP
PHP程序中使用adodb连接不同数据库的代码实例
2015/12/19 PHP
laravel中的错误与日志用法详解
2016/07/26 PHP
PHP里的$_GET数组介绍
2019/03/22 PHP
网页常用特效代码整理
2006/06/23 Javascript
再谈javascript 动态添加样式规则 W3C校检
2009/12/25 Javascript
你必须知道的JavaScript 中字符串连接的性能的一些问题
2013/05/07 Javascript
JavaScript数组深拷贝和浅拷贝的两种方法
2014/04/16 Javascript
jquery动态添加元素事件失效问题解决方法
2014/05/23 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
2015/06/17 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
JavaScript的设计模式经典之代理模式
2016/02/24 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
2016/12/19 Javascript
jQuery实现菜单栏导航效果
2017/08/15 jQuery
js调用设备摄像头的方法
2018/07/19 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
jquery 验证用户名是否重复代码实例
2019/05/14 jQuery
基于VUE的v-charts的曲线显示功能
2019/10/01 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
python将字符串转换成数组的方法
2015/04/29 Python
十分钟利用Python制作属于你自己的个性logo
2018/05/07 Python
python3 property装饰器实现原理与用法示例
2019/05/15 Python
python从入门到精通 windows安装python图文教程
2019/05/18 Python
python GUI图形化编程wxpython的使用
2019/07/19 Python
python利用itertools生成密码字典并多线程撞库破解rar密码
2019/08/12 Python
python sqlite的Row对象操作示例
2019/09/11 Python
PyCharm使用之配置SSH Interpreter的方法步骤
2019/12/26 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
Python打印不合法的文件名
2020/07/31 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
Priority Pass机场贵宾室会籍计划:全球超过1200间机场贵宾室
2018/08/26 全球购物
车队司机个人自我鉴定
2014/04/17 职场文书
蔬果开业典礼发言稿应该怎么写?
2019/09/03 职场文书