首先在settings.py 文件中设置 MEDIA_ROOT
和 MEDIA_URL
#默认上传文件的保存位置,上传的文件都临时存在这里,这个文件可以建在项目文件夹下边。
MEDIA_URL = '/media/'
#MEDIA_ROOT,设置完之后是当前的运行路径加上media,
#运行路径是,C:\Users\Administrator\Desktop\django,MEDIA_ROOT就是C:\Users\Administrator\Desktop\django\media
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
#form 文件
1 class Renshi(forms.Form): 2 mingdan = forms.CharField(initial='输入字符') # 默认输入 3 wenjian = forms.FileField() # 特定文件夹下的文件 recursive=True
1 def renshi(request): 2 if request.method == 'POST': 3 form = Renshi(request.POST, request.FILES) # request.FILES,文件专用 4 if form.is_valid(): 5 wenjian = request.FILES['wenjian'] # 读取文件 6 baseDir = os.path.dirname(os.path.abspath(__name__)) # 获取运行路径
7 jpgdir = os.path.join(baseDir, 'media') # 加上media路径 8 filename = os.path.join(jpgdir, wenjian.name) # 获取文件路径 9 fobj = open(filename, 'wb+') # 打开上传文件 10 for x in wenjian.chunks(): 12 fobj.write(x) # request.FILES,文件专用 14 fobj.close() 47 return HttpResponse(x) 48 else: 49 form = Renshi() 50 return render(request, 'renshi.html', {'form': form})