Naučite kako učinkovito aktivirati način rada za održavanje na svojoj Django aplikaciji, istovremeno osiguravajući besprijekorno iskustvo za svoje korisnike.
Postavljanje vaše Django aplikacije u način rada za održavanje ključno je kada se izvršavaju ažuriranja, rješavaju tehnički problemi ili unose značajne promjene u vašu aplikaciju.
Privremenim ograničavanjem korisničkog pristupa i prikazivanjem stranice za održavanje možete prenijeti važne poruke, osigurati glatki proces ažuriranja i spriječiti potencijalne sukobe ili gubitak podataka.
Bilo da ste programer ili administrator sustava, razumijevanje kako implementirati način održavanja u Djangu omogućit će vam održavanje pouzdane i korisniku prilagođene aplikacije.
Kako koristiti paket Django-Maintenance-Mode
Zbog svoje opsežne podrške zajednice, Django nudi širok raspon paketa koji mogu značajno poboljšati vaš proces razvoja, omogućujući brži i učinkovitiji rad. Ovi paketi ublažavaju teret ponavljajućih zadataka, osiguravajući glatko iskustvo za vas kao programera.
Jedan od paketa koje nudi Django je django-način održavanja paket koji možete koristiti za stavljanje vaše Django aplikacije u način rada za održavanje. The django-način održavanja paket radi tako da prikazuje stranicu za 503HTTP statusni kod. Možeš koristiti django-način održavanja u svojoj aplikaciji pomoću sljedećih koraka.
Korak 1: Instalirajte Django-Maintenance-Mode u svoje virtualno okruženje
- U vašem virtualno okruženje projekta, instalirajte paket pomoću Pythonovog pip upravitelja paketa. Pokrenite ovu naredbu u svom sučelje naredbene linije (CLI):
pip instaliraj django-maintenance-mode
- Nakon instaliranja paketa dodajte održavanje prema INSTALLED_APPS popis u vašem postavke.py datoteka:
INSTALLED_APPS = [
# neke druge aplikacije,
'održavanje',
] - Zatim dodajte međuopreme za django-način održavanja prema MIDDLEWARE popis u vašem postavke.py datoteka:
MIDDLEWARE = [
# neki drugi međuprogram od djanga,
'maintenance_mode.middleware. MaintenanceModeMiddleware',
]
Korak 2: Napravite HTML predložak za prikaz poruke o načinu održavanja
Za django-način održavanja paket za prikaz stranice s greškom 503, traži a 503.html datoteku predloška u šablone imenik. Da biste to postavili, učinite sljedeće:
- Napravite mapu pod nazivom šablone u vašem korijenskom direktoriju.
- Otvorite svoj novostvoreni šablone mapu i stvorite datoteku pod nazivom 503.html.
- U vašem postavke.py datoteku, pronađite PREDLOŠCI postavke i konfigurirajte DIRS popis u njemu ovako:
'DIRS': [BASE_DIR/'predlošci'],
- Otvori svoju 503.html datoteku i napišite HTML kod za prikaz poruke o pogrešci svojim korisnicima. Evo jednostavnog koda koji možete koristiti:
html>
<html>
<glava>
<metaskup znakova="UTF-8">
<titula>503 usluga nedostupnatitula>
<stil>
tijelo {
obitelj fontova: Arial, sans-serif;
boja pozadine: #f5f5f5;
margina: 0;
ispuna: 0;
}
.container-503 {
max-width: 600px;
margina: 100px automatski;
poravnanje teksta: središte;
}
h1 {
veličina fonta: 48px;
boja: #333333;
margina-dno: 20px;
}
p {
veličina fonta: 18px;
boja: #666666;
margina-dno: 30px;
}
.btn-503 {
prikaz: inline-block;
ispuna: 12px 24px;
boja pozadine: #007bff;
boja: #ffffff;
tekst-ukras: nema;
rubni radijus: 4px;
veličina fonta: 18px;
}
stil>
glava>
<tijelo>
<divrazreda = "kontejner-503">
<h1>503 usluga nedostupnah1>
<str>
Ups! Trenutno radimo na nekim ažuriranjima.
Ispričavamo se zbog neugodnosti i cijenimo vaše strpljenje.
str>
<str>Posjetite web stranicu kasnije ili se obratite našem timu za podrškustr>
<ahref = "mailto: [email protected]"razreda = "btn-503">
Kontaktirajte podršku
a>
div>
tijelo>
html>
Korak 3: Uključite način održavanja i ponovno pokrenite poslužitelj
U vašem postavke.py datoteci dodajte ovaj kod za uključivanje načina održavanja:
MAINTENANCE_MODE = Pravi
Ponovo pokrenite svoj razvojni poslužitelj pokretanjem ovoga u vašem CLI-ju:
python manage.py runserver
Kada dođete na svoje web mjesto, trebali biste vidjeti stranicu za održavanje koju ste izradili.
Kako ignorirati administratorsku stranicu u Django načinu održavanja
Kako biste omogućili vašem administratorskom mjestu da nastavi funkcionirati čak iu načinu rada za održavanje, django-način održavanja pruža postavku tzv MAINTENANCE_MODE_IGNORE_ADMIN_SITE. Trebali biste dodati ovu postavku u svoj postavke.py datoteku i postavite je na Pravi:
MAINTENANCE_MODE_IGNORE_ADMIN_SITE = Pravi
Zadana vrijednost gornje postavke je lažno; stoga će na vašu stranicu administratora utjecati stranica načina održavanja ako je ne postavite Pravi.
Kako ignorirati prikaz temeljen na određenim funkcijama u Djangovom načinu održavanja
The django-način održavanja paket pruža dekorater za sprječavanje određenog prikaza ili stranice—kao što je Oko stranicu vaše web-lokacije—od prelaska u način rada za održavanje. Da biste to učinili, prvo uvezite dekorater u svoj pogledi.py modul:
iz način_održavanja.dekorateri uvoz prisilno_način_održavanja_isključen
Nakon uvoza dekoratera, dodajte ga svom prikazu ovako:
@force_maintenance_mode_off
defnaziv_pogleda(zahtjev):
# izvođenje logike pogleda
# nikada ne vrati odgovor 503
Nakon pravilne implementacije dekoratera, URL za taj određeni prikaz postat će dostupan vašim korisnicima.
Kako ignorirati određeni prikaz temeljen na klasi u Djangovom načinu održavanja
Ignoriranje pogleda temeljenog na klasi slično je zanemarivanju pogleda temeljenog na funkciji. Međutim, najbolji pristup je učiniti to u urls.py datoteka.
Prvo morate uvesti prisilno_način_održavanja_isključen dekorater u vašoj aplikaciji urls.py datoteka. Zatim ga morate uključiti u svoj URL put. Evo primjera:
iz način_održavanja.dekorateri uvoz prisilno_način_održavanja_isključen
iz .pogleda uvoz VašPogled
url uzorci = [
# nikada ne vrati odgovor 503
staza('', force_maintenance_mode_off (YourView.as_view()), name='moj pogled'),
]
Pobrinite se da uvezete i druge potrebne stvari kao što su staza i vaš pogled temeljen na klasi.
Kako uključiti način rada održavanja za prikaz temeljen na određenim funkcijama
- Da biste uključili način rada održavanja za jedan prikaz, prvo isključite način rada održavanja u svom postavke.py datoteku na sljedeći način:
MAINTENANCE_MODE = lažno
- Dalje, u vašem views.py, trebali biste uvesti prisilno_način_održavanja_uključen dekorater i dodajte ga svom prikazu:
iz način_održavanja.dekorateri uvoz prisilno_način_održavanja_uključen
@force_maintenance_mode_on
defnaziv_pogleda(zahtjev):
# Izvođenje logike pogleda
# Uvijek vrati 503 odgovor
Kako uključiti način rada održavanja za određeni prikaz koji se temelji na klasi
- Prvo biste trebali isključiti način rada za održavanje u svom postavke.py datoteka:
MAINTENANCE_MODE = lažno
- Dalje, u vašem urls.py, trebali biste uvesti prisilno_način_održavanja_uključen dekorater i dodajte ga potrebnoj URL stazi:
iz način_održavanja.dekorateri uvoz prisilno_način_održavanja_uključen
iz .pogleda uvoz VašPogledurl uzorci = [
# Uvijek vrati 503 odgovor
staza('', force_maintenance_mode_on (YourView.as_view()), name='moj pogled'),
]
Kako koristiti drugačiji naziv predloška za Django način održavanja
Prema zadanim postavkama, django-način održavanja paket traži a predlošci/503.html šablona. Možete odlučiti nadjačati ovo u postavke.py datoteka.
Pretpostavimo da imate zasebnu mapu za obradu pogrešaka u svojoj aplikaciji; htjet ćete uključiti svoje 503.html predložak u ovoj mapi. Dakle, vaš predložak će biti unutra predlošci/pogreške/503.html.
Zadana postavka za ovu konfiguraciju je sljedeća:
MAINTENANCE_MODE_TEMPLATE = "503.html"
Da biste ga nadjačali, trebali biste dodati drugu stazu koja pokazuje na vašu stranicu s pogreškom. Evo primjera:
MAINTENANCE_MODE_TEMPLATE = "greške/503.html"
Također možete promijeniti naziv datoteke ako želite, a sve će raditi u redu ako dodate potrebne konfiguracije.
Osim gore navedenih konfiguracija, django-način održavanja paket pruža druge zanimljive konfiguracije koje vam pomažu prilagoditi način održavanja vaše aplikacije vašim specifičnim potrebama. O ovim konfiguracijama možete pročitati u django-maintenance-mode dokumentacija.
Koristite način održavanja kako biste osigurali besprijekorna ažuriranja i poboljšano korisničko iskustvo u svojoj aplikaciji
Korištenje načina održavanja u vašoj aplikaciji može olakšati stvari vama i vašim korisnicima. Privremenim onemogućavanjem pristupa cijeloj ili dijelu vaše aplikacije tijekom ažuriranja ili zadataka održavanja, možete minimizirati smetnje i pogreške koje mogu proizaći iz istodobnih interakcija korisnika.
Korištenje načina održavanja ne samo da će vam omogućiti učinkovito izvođenje potrebnih ažuriranja, već također pokazuje predanost pružanju glatkog i neprekidnog iskustva za vaše korisnike.
Osim načina održavanja, također možete pružiti prilagođene predloške za druge pogreške u Djangu.