我想使用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>