(四)django上传文件并读取存入数据库

django上传文件并读取存入数据库

前台

  
  <form method="post" action="/a_upload/" enctype="multipart/form-data">
    {% csrf_token %}
    <input type="hidden" name="fid" value="{{ file.f_id }}">
    <input type="hidden" name="uid" value="{{ file.user_id }}">
    <div class="form-group">
    选择附件:<br>
    <input type="file" name="myfiles" multiple=""> <br>
    </div>
    <button type="submit" class="btn btn-default"> 上传
    <br>

	</form>

数据库

a_file(id,name,fid)

这里做的是一个附件上传,fid表示主文件

view.py

def a_upload(request):
    if request.method == "POST":
        fid = request.POST.get("fid")
        files = request.FILES.getlist("myfiles")
        uid = request.POST.get("uid")
        if files is None:
            return HttpResponse("请选择需要上传的文件")
        for f in files:
            file = AFile()
            file.name = f.name
            file.f_id = fid
            file.save()
            d = open(os.path.join('static/media/yf_upload', f.name), 'wb+')
            for chunk in f.chunks():
                d.write(chunk)
                d.close()
        file_list = FileMain.objects.filter(insert_people=uid)
    return render(request, "show_list.html",{'file_list':file_list})

这里实现的是将文件上传并存取数据库,没有涉及文件表格的详细内容

posted @ 2020-01-15 22:11  小菜菜最菜  阅读(4191)  评论(0编辑  收藏  举报