views视图

 

1.request.POST.get('.......')    --radio       单选框

get()方法  从HTML中提取发过来的数据

1.

2.

3.

4.

 

2.request.POST.get('.......')   --checkbox        多选框 结果只返回一个

1.

2.

3.

 

4.

 

3.request.POST.getlist('.......')   --checkbox        多选框 结果返回多个

1.

 

 

4.竖标志单选

 

5.竖标志多选

 

 

 6.上传文件

1.上传文件 要在form标签加内容:

enctype ="multipart/form-data" 

 

2.type file

3.request.FILES.拿文件内容

 

4.

5.选择后出现文件1.jpg

 

 6.

 

7.如果有大量文件  让文件装入文件夹

 8.

 

 ====================================================================

 django提供两种对应关系

FBV--------function base view  (以上就是)

  url.py

      index-->函数名

 view.py

     def 函数(request):

            ....

 

CBV--------class base view 

      index-->执行类中指定方法0

CBV就是在视图里使用类处理请求。即可以让我们用类写View。这样做的优点主要下面两种:

  • 提高了代码的复用性,可以使用面向对象的技术,比如Mixin(多继承)
  • 可以用不同的函数针对不同的HTTP方法处理,而不是通过很多if判断,提高代码可读性

  Django的url收到请求后,是需要把这个请求分配给父类一个可调用的函数的,而不是一个class。针对这个问题,class-based view提供了一个as_view()静态方法(也就是类方法),调用这个方法,会创建一个类的实例,然后通过实例调用父类dispatch()方法,dispatch()方法会根据request的method的不同调用相应的方法来处理request(如get() , post()等)。到这里,这些方法和function-based view差不多了,要接收request,得到一个response返回。

1.固定用法 

 

2.

3.根据方法编写具体内容,request放的是封装好的具体方法(get post )

class中可以定义不同的request方法  get post put patch delete head options trace

4.先get 获取数据  再post 点击提交

 

4.我们的类继承自View ---class Home(View)   父类dispatch()方法,dispatch()方法会根据request的method的不同调用相应的方法来处理request(如get() , post()等)。

 如果在类中重写父类dispatch()方法,并且直接返回 则无法调用到request

5. 如果在类中重写父类dispatch()方法,并且返回父类方法  同不加dispatch()方法

 5.如果在类中重写父类dispatch()方法,并且返回父类方法,并加上装饰器   相当于助理 (重点 )

6.执行

 

 

转载于:https://www.cnblogs.com/hmm1995/p/10075864.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值