python 文件上传 web_VereWeb Python Web 之 多文件上传

文件上传效果:

1.在 views  下面新建一个 fileupload.html 视图模版文件

Insert title here

var fileNameList = JSON.parse('{$fileNameList}');

for(var i=0;i

{

var fileName = fileNameList[i]

        document.write("")

}

2.在 controls 下面新建一个 FileUploadAction.py 类文件

import json

import shutil

import os

import uuid

class FileUploadAction:

def execute(self, request, response):

return "success"

def add(self, request, response):

# 上传后文件名列表

fileNameList = []

# 获得表单 上传的所有文件列表

fileList = request.getFileList()

length = len(fileList)

for i in range(0, length):

pictureItem = fileList[i]

if pictureItem and pictureItem.getFileName() !="":

# 如果要保证 文件名的唯一性 可以 截取文件扩展名 然后用 uuid.uuid1() 生成唯一 文件名

picture = pictureItem.getFileName()

#保存上传文件 到 upload 文件夹

sourceFile = pictureItem.getFilePath()

destFile = os.path.realpath("upload")+"/"+picture # 文件服务器端绝对路径

shutil.copy(sourceFile,destFile)

fileNameList.append(picture)

request.setAttribute("fileNameList", json.dumps(fileNameList))

# 调用 execute 重新转发到 文件上传页面

return self.execute(request, response)

3.在 urls.py  添加 fileupload 到 FileUploadAction 的映射

# 拦截器列表 按顺序执行拦截 Action

urlInteceptorList = [

"interceptor/DefaultInterceptor"

]

# 网址映射转发

urlActionMapping = {

"index":{

"action":"controls/IndexAction",

"success":"index.html"

},

"fileupload":{

"action":"controls/FileUploadAction",

"success":"views/fileupload.html"

}

}

4.重新启动 WebServer.py 服务器 在 浏览器 访问 http://localhost:8000/views/fileupload 看到上面截图 文件上传效果

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值