Python+django实现文件上传

 更新时间:2016年01月17日 14:51:52   投稿:hebedich  
本系列以可操作性为主,介绍如何通过django web框架来实现一些简单的功能。每一篇文章都具有完整性和独立性。使用新手在动手做的过程中体会web开发的过程,过程中细节请参考相关文档。

1、文件上传(input标签)

 (1)html代码(form表单用post方法提交)

<input class="btn btn-primary col-md-1" style="margin:0px 15px 25px 15px;" id="submitForm" type="button" value="提交" />
<form id="picture_form" action="/addForm/"enctype="multipart/form-data" method="post">
 <table>
   表格
 </table>
</form>

(2)jq提交表单到后台

 $("#submitForm").click(function(){
   //alert($("#SelectBus").val());
   addNameForm();//因为是动态加载的表单内容,所以会用函数给所用标签符name值
   $.ajaxSetup({
     async : false
   });
   $("#picture_form").ajaxSubmit({
     resetForm:false,
     dataType:'json',
     success:function(data){
       if(data=1){alert("提交成功");}
       else{alert("提交失败");}
     }
   });
 });

(3)python后台接受处理表单所传内容,主要file处理

 #自定义存储路径
 rollfileName="webStatic/uploadfile/files/"
 rollfilePath=os.path.join(basePath,rollfileName)
 # req.POST.get(text[1],'')如果获取到信息,则值不是123,如果是空,没有获取到信息结果是123
 if req.POST.get(text[1],'123')=='123':
   # 获取文件二进制流
   reqfile = req.FILES[text[1]]
   # 获取文件名后缀
   filetype=reqfile.name.split(".")[-1]
   # 生成随机字符串加后缀的文件名
   filename=str(uuid.uuid1())+'.'+filetype
   # 打开文件存储路径
   of = open(rollfilePath+filename, 'wb+')
   # 向指定路径写入文件
   for chunk in reqfile.chunks():
     of.write(chunk)#写入内容
   of.close()#关闭连接

18 #在数据库中存储路径rollfileName+filename

(4)python后台处理用到的包

 1 #生成无序字符串,替换文件名

 2 import uuid

相关文章

  • Python列表如何更新值

    Python列表如何更新值

    在本篇内容中小编给大家整理的是一篇关于Python列表如何更新值的知识点,需要的朋友们可以学习下。
    2020-05-05
  • 总结Python编程中函数的使用要点

    总结Python编程中函数的使用要点

    这篇文章主要介绍了Python编程中函数的使用要点总结,文中也讲到了人民群众喜闻乐见的lambda表达式的用法,需要的朋友可以参考下
    2016-03-03
  • 十个Python程序员易犯的错误

    十个Python程序员易犯的错误

    不管是在学习还是工作过程中,人都会犯错。虽然Python的语法简单、灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头。本文为大家分享了10大常见错误,需要的朋友可以参考下
    2015-12-12
  • Python实现多个Word文档合并

    Python实现多个Word文档合并

    在Python中,可以使用Python-docx库来操作Word文档,所以下面小编就为大家介绍一下如何利用Python-docx实现多个Word文档合并功能吧,需要的可以参考一下
    2023-06-06
  • Python3.7黑帽编程之病毒篇(基础篇)

    Python3.7黑帽编程之病毒篇(基础篇)

    这篇文章主要介绍了Python3.7黑帽编程之病毒篇(基础篇),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • python方法如何实现字符串反转

    python方法如何实现字符串反转

    这篇文章主要介绍了python方法如何实现字符串反转问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • python爬虫学习笔记之pyquery模块基本用法详解

    python爬虫学习笔记之pyquery模块基本用法详解

    这篇文章主要介绍了python爬虫学习笔记之pyquery模块基本用法,结合实例形式详细分析了python爬虫pyquery模块基本功能、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • 200行python代码实现2048游戏

    200行python代码实现2048游戏

    这篇文章主要为大家详细介绍了200行Python代码实现2048游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • Python Unittest ddt数据驱动的实现

    Python Unittest ddt数据驱动的实现

    本文主要介绍了Python Unittest ddt数据驱动的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • python commands模块的适用方式

    python commands模块的适用方式

    这篇文章主要介绍了python commands模块的适用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02

最新评论