Būtinos sąlygos:
Prieš praktikuodami šios mokymo programos scenarijų, turite atlikti šias užduotis.
- Įdiekite „Django“ versiją 3+ „Ubuntu 20+“ (geriausia)
- Sukurkite „Django“ projektą
- Paleiskite „Django“ serverį, kad patikrintumėte, ar serveris veikia tinkamai.
Nustatykite „Django“ programą:
Norėdami sukurti „Django“ programą, paleiskite šią komandą atsisiųsti programą. $ python3 valdyti.py startapp downloadapp
Vykdykite šią komandą, kad sukurtumėte vartotoją, kad pasiektumėte „Django“ duomenų bazę. Jei vartotoją sukūrėte anksčiau, komandos vykdyti nereikia.
$ python3 valdyti.py sukurianaudotojasPridėkite programos pavadinimą INSTALLED_APP dalis parametrus.py failą.
INSTALLED_APPS = […
„downloadapp“
]
Sukurkite aplanką pavadinimu šablonai viduje atsisiųsti aplanką ir nustatykite šablonai programos vieta Šablonai dalis parametrus.py failą.
Šablonai = [… .
„DIRS“: ['/ home / fahmida / django_pro / dopwnloadapp / templates'],
… .
,
]
Atsisiųsti teksto failą:
Keisti Peržiūrų.py failas, esantis atsisiųsti aplankas su tokiu scenarijumi. The Atsisiųsti failą() funkcija atsisiųs tekstinį failą pavadinimu teksto.txt tam tikram URL keliui. Failas atidarytas skaityti scenarijaus pradžioje. Failo atsisiuntimui nustatytas „Mime“ tipas ir antraštės informacija.
Peržiūrų.py
# Importuoti „mimetypes“ modulįimporto mimetipai
# importuoti os modulį
importuoti os
# Importuoti „HttpResponse“ modulį
nuo django.http.atsakymo importas HttpResponse
def download_file (užklausa):
# Apibrėžkite „Django“ projekto bazės katalogą
BASE_DIR = os.kelias.dirname (os.kelias.dirname (os.kelias.abspath (__ file__)))
# Apibrėžkite teksto failo pavadinimą
failo pavadinimas = 'testas.txt '
# Apibrėžkite visą failo kelią
failo kelias = BASE_DIR + '/ downloadapp / Files /' + failo vardas
# Atidarykite failą skaityti turinį
kelias = atviras (filepath, 'r')
# Nustatykite mime tipą
mime_type, _ = mimetypes.guess_type (failo kelias)
# Nustatykite „HttpResponse“ grąžinimo vertę
response = HttpResponse (kelias, content_type = mime_type)
# Nustatykite HTTP antraštę siuntimui į naršyklę
response ['Content-Disposition'] = "priedas; failo pavadinimas =% s"% failo pavadinimas
# Grąžinkite atsako vertę
grįžimo atsakymas
Dabar atidarykite URL.py failą iš „Django“ projekto ir atnaujinkite failą naudodami šį scenarijų. Teksto failas bus atsisiųstas, jei kelias, 'parsisiųsti/' yra naudojamas po pagrindinio URL.
URL.py
# Importo kelio modulisnuo django.URL importavimo kelias
# Importuoti rodinius
iš „downloadapp“ importo rodinių
# Nustatykite atsisiuntimo kelią
urlpatterns = [
kelias ('atsisiųsti /', peržiūros.Atsisiųsti failą),
]
Atidarykite naršyklę ir vykdykite šį URL, kuris atidarys atsisiuntimo dialogo langą vartotojui.
http: // localhost: 8000 / atsisiųsti
Failas bus atsisiųstas, jei vartotojas spustelės Gerai mygtukas pasirinkus Išsaugoti failą variantą.
Atsisiųskite PDF failą naudodami šabloną:
Norėdami sukurti atsisiuntimo parinktį su atsisiuntimo nuoroda, reikės sukurti šabloną. Sukurkite HTML failą pavadinimu failą.HTML su šiuo scenarijumi, kad naršyklėje būtų rodoma atsisiuntimo nuoroda, kad būtų galima atsisiųsti PDF failą. Pagal hipersaitą, kuris naudojamas scenarijuje, atsisiųsite CF.pdf failą.
failą.HTML
Atsisiųskite failą naudodami „Django“
Atsisiųsti PDF