在django里面上传文件
views.py
# Create your views here.
# coding=utf-8
from django.http import HttpResponse,HttpResponseRedirect
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.views.decorators.csrf import csrf_exempt
from django.views.decorators.csrf import csrf_protect
#上传文件
@csrf_exempt
@csrf_protect
def upload_tomcat_config_file(request):
from django import forms
class UploadFileForm(forms.Form):
title = forms.CharField(max_length=1000000)
file = forms.FileField()
if request.method == "GET":
data='get'
if request.method == "POST":
f = handle_uploaded_file(request.FILES['t_file'])
return render_to_response('upload_config_file.html',context_instance=RequestContext(request))
#return HttpResponse(data)
def handle_uploaded_file(f):
f_path='/srv/salt/config/'+f.name
with open(f_path, 'wb+') as info:
print f.name
for chunk in f.chunks():
info.write(chunk)
return f
#上传文件结束
upload_config_file.html内容如下
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>{{ title }}</title>
</head>
<body>
<a>配置文件上传</a>
<form action="/opsapi/command/up_file" method="post" enctype="multipart/form-data" accept-charset="utf-8">
{% csrf_token %}
<input type="file" value="" />
<button>Submit</button>
</form>
</body>
</html>
url的配置就不写了,效果如下
上传到服务器上面
我这里是用时间来保存的,代码和上面稍有不同