本文关于 如何上传文件,富文本编辑器
files的使用方法:
文件对象:request.FILES.get() 获取上传的文件对象
文件对象:.name 文件名
文件对象:.size 文件字节
文件对象:.chunks() 方法里面存放了上传文件内容
form 表单里面要添加一个特殊的参数 enctype="multipart/form-data" # 文件的传输配置
步骤:
1.创建一个HTML文件用于上传文件
2.配置setting,url, views
<head>
<meta charset="utf-8">
<title>Title</title>
</head>
<body>
<form action="/qzone/myfile"method="post"enctype="multipart/form-data">
{% csrf token %}
<input type="file" name="myfile">
<input type="submit" value="上传">
</form> #上传的文件与项目处于评级目录
def myfiles(request):
if request.method =='GET':
return render (request,'qzone_html/file.html')
elif request.method=='POST':
myfile=request.FILES.get('myfile') #获取上传的文件
file=open(myfile.name,'wb+') #新建文件并打开,并与上传文件的类型相同
for row in myfile.chunks #循环chunks() ,里面包含的上传文件
file.write(row) #写入创建的文件中
file.close()
return HttpResponse('上传成功')
试图函数代码:
导入os模块,通过os.path.join() 将文件目录和上传的文件匹配起来
上传之后就在指定目录里存放了
def myfiles(request):
if request.method=='GET':
return render(request,'qzone_html/file.html')
elif request.method=="POST":
myfile=request.FILES.get('myfile') #获取上传的文件
file path =os.path.join('files',myfile.name) #配置存放路径files
file=open(file_path,mode='wb+') #打开并写入
for row in myfile.chunks(): #循环chunks(),里面包含了用户上传的文件
file.write(row) #写入到上传的文件中
file.close() #关闭