Я пытаюсь настроить кнопку django, чтобы я мог загрузить файл. Я пробовал следовать руководству, но думаю, что что-то упустил. Код urls.py
ниже - это файл urls.py
, который я создал в разделе приложения моего проекта. Я не уверен, что это правильный вариант. Код ниже не работает, локальный хост не загружает страницу. однако, когда я комментирую url('download_my_pdf', download_pdf),
в моем urls.py
, сайт загружается, так как у нас нет этой ссылки на код в представлениях.
ИНДЕКС. HTML:
<input type="button" value="Download" onclick="window.open('download_my_pdf')">
VIEWS.PY:
from django.shortcuts import render
from django.http import HttpResponse
from wsgiref.util import FileWrapper
def index(request):
return render(request, "index.html", {})
def home(request):
return render(request, "home.html", {})
def download_pdf(request):
filename = 'faults.pdf'
content = FileWrapper(filename)
response = HttpResponse(content, content_type='application/pdf')
response['Content-Length'] = os.path.getsize(filename)
response['Content-Disposition'] = 'attachment; filename=%s' % 'faults.pdf'
return response
URLS.PY
from django.urls import url
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name="index"),
path('home', views.home, name="home"),
url('download_my_pdf', download_pdf),
]