我想使用Django使用一个提交按钮上传一组多个文件

时间:2020-11-02 10:21:23

标签: python django

我想使用Django使用一个提交按钮上传一组多个文件。我面临的问题是上传的文件没有保存在本地计算机上的任何位置。 任何人都可以在这里帮助我。

我的代码是:

urls.py 

from django.urls import path
from django.conf import settings
from django.conf.urls.static import static 

from . import views

urlpatterns = [
    path('', views.home, name='home'),
    path('majorheads/', views.display_majorheads, name='majorheads'),
    path('upload/', views.display_uploadpage, name='displayupload'),
 ]
 
if settings.DEBUG:
    urlpatterns + static(settings.MEDIA_URL, document_root = settings.MEDIA_ROOT)

views.py

from django.shortcuts import render
from django.http import HttpResponse
from django.core.files.storage import FileSystemStorage

def display_uploadpage(request):
    return render(request, 'website/upload.html' )
    if request.method == 'POST':
        uploaded_file = request.FILES['files']
        fs = FileSystemStorage()
        fs.save(uploaded_file.name, uploaded_file)

    return render(request, 'upload.html') 

settings.py

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

upload.html

<form method="post" enctype="multipart/form-data"> 
                        {% csrf_token %}
                            <div class="form-group"> 
                              <div class="container"> 
                                
                                <div class="row"> 
                                    <div class="col"> 
                                      <label>Select AG Data...</label>
                                      <input type="file" id="files" name="files" multiple="multiple"> 
                                    </div> 
                                    <div class="col"> 
                                      <label>Select fin year</label>
                                      <input type="text" id="datepicker"/> 
                                    </div> 
                                </div>
                              </div>
                           </div>
                        </form>

0 个答案:

没有答案