关于django批量上传图片

本来想一张一张上传的,但是明显会对客户造成不必要的麻烦,所以如果前台一次性上传五张十张的话,那就简单的多。
 
但是后台我数据库对于图片存储的字段只有一个,不可能有多少张照片就要多少个字段来存储。也就是说,1:我每次只能在后台存一张到数据库,
2:在前台展示的时候我直接可以循环这一个字段来展示我的图片

那么这就涉及到一个列表跟数据循环存储的东西了

用到字典是因为我每张图片还有各自的图片描述,这两个信息时同时提交跟保存的。我把图片保存的url跟他的描述做成列表,然后再循环保存就搞定了。

这里主要用到的就是python的zip()函数
>>> s=[‘a‘,‘b‘]
>>> b=[‘1‘,‘2‘]
>>> zip(s,b)
[(‘a‘, ‘1‘), (‘b‘, ‘2‘)]

看我前台代码:
<form method="POST" action="/savephoto/{{id}}/" enctype="multipart/form-data" name="form">
                          <p><label>上传图片</label>
                           <input type="file" name = "file" id="file">
                          </p>
<p><label>对图片的描述</label>
              <textarea name="describe" id="describe" cols="50" rows="5"></textarea>
                          </p>

<p><label>上传图片</label>
                           <input type="file" name = "file1" id="file1">
                          </p>
<p><label>对图片的描述</label>
              <textarea name="describe1" id="describe1" cols="50" rows="5"></textarea>
                          </p>

后台:

if ‘file‘ in request.FILES:
      image =request.FILES[‘file‘]
      des = request.POST.get(‘describe‘,‘‘)
      imglist.append(image)
      deslist.append(des)
    if ‘file1‘ in request.FILES:
      image =request.FILES[‘file1‘]
      des = request.POST.get(‘describe1‘,‘‘)
      imglist.append(image)
      deslist.append(des)
    
    info=zip(imglist,deslist)
    for (image,des) in info:
      m= UserPhoto(photo=image,user_id=id,describe=des)
      m.save()

这样就成功将多图片的信息循环保存到UserPhoto里了!

关于django批量上传图片,布布扣,bubuko.com

时间: 2024-10-19 23:05:57

关于django批量上传图片的相关文章

php批量上传图片并把图片名放入数据库

    前几天工作中要做这样一个功能,有八百多个系统 生成的会员:给这八百多个系统会员上传图片:然后把图片名放入数据库. 第一步: 第一步肯定是首先把图片上传到对应的图片目录下,直接用框架中已经有的上传类: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <!--?php                try {                     $upload=new Upload();       

-Android -线程池 批量上传图片 -附php接收代码

(出处:http://www.cnblogs.com/linguanh/) 目录: 1,前序 2,类特点 3,用法 4,java代码 5,php代码 1,前序 还是源于重构,看着之前为赶时间写着的碎片化的代码,甚是悲剧,臃肿且长,其实重构也是一个提高的过程,重构过程中会接触到更多的知识点.至少,我现在意识到,那怕是听过.有这样的意识而没真正动过手都是不行的,多线程并发最好使用线程池而不要一味地 new Thread(...).start().下面我分享个自己刚写好的图片批量上传类,顺带serve

ASP.net(C#)批量上传图片(完整版)

摘自:http://www.biye5u.com/article/netsite/ASPNET/2010/1996.html 这篇关于ASP.Net批量上传图片的文章写得非常好,偶尔在网上看到想转载到这里,却费劲了周折.为了更新这篇文章,我用了近半个小时,网上的转载都残缺不全,希望大家有用的参考一下,作者写的非常好. 因本网站上传图片的需要,参考很多成熟的经验,在ASP.net平台上使用C#语言,做了这一自动批量上传图片的.ASPX文件,并经调试成功,在本网站上使用,现发出来供大家参考,也希望高

django -- ImageField 上传图片修改头像

django -- ImageField 上传图片修改头像 头像 Django ImageField 折腾了差不多一个星期的空闲时间,刚上手不久的 Django 为了上传个头像被弄得没了脾气 定义模型 model.py headImg = models.ImageField(upload_to = 'img', default="img/4.jpg") ImageField 是 Django 的内置数据类型,可以较方便的时间图片处理 upload_to 表示要上传到的目录,会在 med

ckeditor添加自定义按钮整合swfupload实现批量上传图片

ckeditor添加自定义按钮整合swfupload实现批量上传图片给ckeditor添加自定义按钮,由于ckeditor只能上传一张图片,如果要上传多张图片就要结合ckfinder,而ckfinder是收费的,所以就想通过自定义按钮整合swfupload实现一次上传多张图片的功能首先下载并安装ckeditor.下载swfupload解压拷贝到对应的文件目录下3.自定义工具栏按钮:我们可以自定义ckeditor工具栏要显示的按钮,工具栏按钮定义可以参考这里.现在我们需要向工具栏添加一个自定义功能

ecshop编辑器FCKeditor修改成KindEditor编辑批量上传图片

ecshop一直使用的编辑器是fck,这个不用多说,相信很多朋友用的很悲剧吧,特别是图片不能批量上传图片. 今天小编就分享一下怎么换掉fck,放上实用的kindeditor,最新ecshop版本的哦.方法如下: 1.官方网站下载最新版kindeditor 现在最先版本的是:kindeditor4.1.4,官方网址:http://www.kindsoft.net 2.上传解压 上传下载的压缩文件到你的网站include目录下,解压kindeditor4.1.4,将其文件夹名称改为:kindedit

.Net ajax异步批量上传图片

利用iframe实现ajax异步批量上传图片,WebForm1页面 <form action="WebForm1.aspx" target="dynamic_creation_upload_iframe" method="post" enctype="multipart/form-data"> <input type="file" name="upload1" />

django中上传图片的写法(转)

view参数 @csrf_exemptdef before_upload_avatar(request):    before = True    return render_to_response('accounts/before_upload_avatar.html',                              {'before': before},                              context_instance=RequestContext(re

使用kindeditor来替换ecshop的fckeditor编辑器,让ecshop可以批量上传图片

老杨原创 kindeditor此编辑器可以让ecshop批量上传图片,可以插入代码,可以全屏编辑,可以插入地图.视频,进行更多word操作,设置字体. 步骤一:进入kindeditor的官网,http://kindeditor.net/index.php下载最新的编辑器版本,将文件上传到网站includes/目录下,注意,不要有多余的目录,要可以访问到includes/kindeditor/kindeditor-min.js 步骤二: 1.修改admin/includes/lib_main.ph