django 获取表单内容 以及文件的上传

获取 type='text' 标签中的内容 

使用 request.POST.get( 'name标签的值',None )

view.py 中的代码

1 def index(request):
2      if request.method =='POST':
3     u = request.POST.get('user',None)     #user 是标签的name属性的值
4     p = request.POST.get('pwd',None)
5     print(v,'post')
6     return render(request,'index.html')
7 else:
8      return render(request, 'index.html')

 

模板中 index.html的代码

    <form action="index/" method="POST">
        <input type="text" name="user" placeholder="用户名"/>
        <input type="password" name="pwd" placeholder="密码"/>
        <input type="submit" value="提交"/>
    </form>

2. 获取  input标签中,type=‘radio’ 中的值

type=radio的时候, name的值 必须相同,所以获取的是 value的值,

view.py 代码

1 def index(request):
2     if request.method =='POST':
3         v = request.POST.get('genger',None)   #这里get的是 name的属性的值
4         print(v,'post')
5         return render(request,'index.html')
6     else:
7         return render(request, 'index.html')

index.html 代码

1 <body>       
2         <p>
3<input type="radio" name="genger" value="1" />
4<input type="radio" name="genger" value="2" />
5<input type="radio" name="genger" value="3" />
6             <input type="submit" value="提交" />
7         </p>     
8 </body>                

获取 select 标签的值 

1 def index(request):
2     if request.method =='POST':
3         v = request.POST.get('city',None)   # get后面写的是 selectname的属性的值
4 print(v,'post') 5 return render(request,'index.html') 6 else: 7 return render(request, 'index.html')

index.html 代码

 1 <body>        
 2         <p>
 3         <select name="city">
 4             <option value="44">北京</option>
 5             <option value="55">天津</option>
 6             <option value="66">青岛</option>
 7         </select>
 8         </p>
 9         <p>
10         <input type="submit" value="提交" />
11         </p>    
12 </body>       

当select 为多选时候 get 换成 getlist

 

获取值的时候 get后面写的都是name属性的值, 当获取单个值的时候 用  

v = request.POST.get('name',None) 
当获取多个值的时候 用
v = request.POST.getlist('city',None)   


文件上传 使用
request.FILES.get
文件上传的时候 form标签要做设置 ,标签内加上
enctype="multipart/form-data
index.html 代码
 1 <body>
 2     <form action="index/" method="POST" enctype="multipart/form-data">
 3     <p>
 4 
 5     <input type="File" name="fafafa">
 6     <input type="submit" value="提交"    />
 7     </p>
 8 
 9     </form>
10 </body>
 
 

views.py 代码

 
 
 1 import os
 2 def index(request):
 3     if request.method =='POST':
 4         obj= request.FILES.get('fafafa')   #get的是 type= ‘file’标签的名字
 5         file_path = os.path.join('upload',obj.name) #upload提前创建的文件夹,用于存放上传的文件  obj.name 是文件名
 6         f = open(file_path , mode = 'wb')
 7         for i in obj.chunks():
 8             f.write(i)
 9         f.close()
10         return render(request,'index.html')
11     else:
12         return render(request, 'index.html')
 
 

 



 

 

转载于:https://www.cnblogs.com/jiayou888888/p/8067680.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值