Forudsætninger:
Før du træner scriptet til denne vejledning, skal du udføre følgende opgaver.
- Installer Django version 3+ på Ubuntu 20+ (helst)
- Opret et Django-projekt
- Kør Django-serveren for at kontrollere, at serveren fungerer korrekt eller ej.
Konfigurer en Django-app:
Kør følgende kommando for at oprette en Django-app med navnet downloadapp. $ python3 administrere.py startapp downloadapp
Kør følgende kommando for at oprette brugeren til adgang til Django-databasen. Hvis du har oprettet brugeren inden da, behøver du ikke køre kommandoen.
$ python3 administrere.py skaberbrugerTilføj appnavnet i INSTALLERET_APP en del af indstillinger.py fil.
INSTALLED_APPS = [..
'downloadapp'
]
Opret en mappe med navnet skabeloner inde i downloadapp mappe og indstil skabeloner placering af appen i MALLER en del af indstillinger.py fil.
MALLER = [.. .
'DIRS': ['/ home / fahmida / django_pro / dopwnloadapp / skabeloner'],
.. .
,
]
Download en tekstfil:
Rediger synspunkter.py fil, der er inde i downloadapp mappe med følgende script. Det download fil() funktionen vil downloade en tekstfil med navnet tekst.txt for en bestemt URL-sti. Filen er åbnet til læsning i begyndelsen af scriptet. Mime-typen og headeroplysningerne er indstillet til at downloade filen.
synspunkter.py
# Importer mimetypes-modulimporter mimetyper
# import os-modul
importer os
# Importer HttpResponse-modul
fra django.http.svar import HttpResponse
def download_fil (anmodning):
# Definer Django-projektets base-bibliotek
BASE_DIR = os.sti.dirname (os.sti.dirname (os.sti.abspath (__ fil__)))
# Definer navn på tekstfil
filnavn = 'test.txt '
# Definer den fulde filsti
filsti = BASE_DIR + '/ downloadapp / Files /' + filnavn
# Åbn filen til læsning af indhold
sti = åben (filsti, 'r')
# Indstil mime-typen
mime_type, _ = mimetypes.gæt_type (filsti)
# Indstil returværdien af HttpResponse
respons = HttpResponse (sti, content_type = mime_type)
# Indstil HTTP-overskriften til afsendelse til browseren
respons ['Content-Disposition'] = "vedhæftet fil; filnavn =% s"% filnavn
# Returner svarværdien
returnere svar
Åbn nu webadresser.py fil fra Django-projektet, og opdater filen med følgende script. Tekstfilen downloades, hvis stien, 'Hent/' bruges efter basis-URL'en.
webadresser.py
# Importer sti-modulfra django.webadresser til import af sti
# Importer visninger
fra downloadapps importvisninger
# Indstil sti til download
urlmønstre = [
sti ('download /', visninger.download fil),
]
Åbn browseren, og udfør følgende URL, der åbner downloaddialogboksen for brugeren.
http: // localhost: 8000 / download
Filen downloades, hvis brugeren klikker på Okay efter valg af Gem filen mulighed.
Download PDF-fil ved hjælp af skabelonen:
En skabelon skal oprettes, hvis du vil tilføje downloadmuligheden med downloadlinket. Opret en HTML-fil med navnet fil.html med følgende script for at få vist downloadlinket i browseren for at downloade en PDF-fil. I henhold til det hyperlink, der bruges i scriptet, downloades CF.pdf fil.
fil.html
Download fil ved hjælp af Django
Download PDF