Naučite se učinkovito aktivirati način vzdrževanja v aplikaciji Django, hkrati pa zagotoviti brezhibno izkušnjo za vaše uporabnike.
Postavitev vaše aplikacije Django v vzdrževalni način je ključnega pomena pri izvajanju posodobitev, reševanju tehničnih težav ali pomembnih spremembah vaše aplikacije.
Z začasno omejitvijo uporabniškega dostopa in prikazom strani za vzdrževanje lahko sporočite pomembna sporočila, zagotovite nemoten postopek posodabljanja in preprečite morebitne spore ali izgubo podatkov.
Ne glede na to, ali ste razvijalec ali sistemski skrbnik, vam bo razumevanje, kako implementirati vzdrževalni način v Django, omogočilo vzdrževanje zanesljive in uporabniku prijazne aplikacije.
Kako uporabljati paket Django-Maintenance-Mode
Zaradi svoje obsežne podpore skupnosti Django ponuja široko paleto paketov, ki lahko bistveno izboljšajo vaš razvojni proces ter omogočijo hitrejše in učinkovitejše delo. Ti paketi olajšajo breme ponavljajočih se nalog in zagotavljajo bolj gladko izkušnjo za vas kot razvijalca.
Eden od paketov, ki jih ponuja Django, je django-način vzdrževanja paket, s katerim lahko svojo aplikacijo Django postavite v vzdrževalni način. The django-način vzdrževanja paket deluje tako, da prikaže stran za 503Statusna koda HTTP. Lahko uporabiš django-način vzdrževanja v vaši aplikaciji z naslednjimi koraki.
1. korak: Namestite Django-Maintenance-Mode v svoje virtualno okolje
- V vašem virtualno okolje projekta, namestite paket s Pythonovim upraviteljem paketov pip. Zaženite ta ukaz v svojem vmesnik ukazne vrstice (CLI):
pip namestite django-maintenance-mode
- Po namestitvi paketa dodajte vzdrževalni_način do INSTALLED_APPS seznam v vašem nastavitve.py mapa:
INSTALLED_APPS = [
# nekatere druge aplikacije,
'maintenance_mode',
] - Nato dodajte vmesno programsko opremo za django-način vzdrževanja do VREDNA OPREMA seznam v vašem nastavitve.py mapa:
MIDDLEWARE = [
# neka druga vmesna programska oprema djanga,
'maintenance_mode.middleware. MaintenanceModeMiddleware',
]
2. korak: Ustvarite predlogo HTML za prikaz sporočila načina vzdrževanja
Za django-način vzdrževanja paket za prikaz strani z napako 503, išče a 503.html datoteka predloge v predloge imenik. Če želite to nastaviti, naredite naslednje:
- Ustvarite mapo z imenom predloge v vašem korenskem imeniku.
- Odprite novo ustvarjeno predloge mapo in ustvarite datoteko z imenom 503.html.
- V vašem nastavitve.py datoteko, poiščite datoteko PREDLOGE nastavitve in konfigurirajte DIRS seznam v njem takole:
'DIRS': [BASE_DIR/'templates'],
- Odpri svojo 503.html in napišite kodo HTML, da uporabnikom prikažete sporočilo o napaki. Tukaj je preprosta koda, ki jo lahko uporabite:
html>
<html>
<glavo>
<metanabor znakov="UTF-8">
<naslov>503 Storitev ni na voljonaslov>
<stil>
telo {
družina pisav: Arial, sans-serif;
barva ozadja: #f5f5f5;
rob: 0;
oblazinjenje: 0;
}
.container-503 {
največja širina: 600 slikovnih pik;
rob: 100 slikovnih pik samodejno;
poravnava besedila: sredina;
}
h1 {
velikost pisave: 48px;
barva: #333333;
rob-spodaj: 20px;
}
p {
velikost pisave: 18px;
barva: #666666;
rob-spodaj: 30px;
}
.btn-503 {
zaslon: inline-block;
oblazinjenje: 12px 24px;
barva ozadja: #007bff;
barva: #ffffff;
tekst-dekoracija: brez;
polmer obrobe: 4px;
velikost pisave: 18px;
}
stil>
glavo>
<telo>
<divrazred = "kontejner-503">
<h1>503 Storitev ni na voljoh1>
<str>
Ups! Trenutno delamo na nekaterih posodobitvah.
Opravičujemo se za nevšečnosti in cenimo vašo potrpežljivost.
str>
<str>Obiščite spletno mesto pozneje ali kontaktirajte našo skupino za podporostr>
<ahref = "mailto: [email protected]"razred = "btn-503">
Obrnite se na podporo
a>
div>
telo>
html>
3. korak: Vklopite način vzdrževanja in znova zaženite strežnik
V vašem nastavitve.py dodajte to kodo, da vklopite način vzdrževanja:
MAINTENANCE_MODE = Prav
Znova zaženite razvojni strežnik tako, da to zaženete v CLI:
python manage.py runserver
Ko se pomaknete na svoje spletno mesto, bi morali videti stran za vzdrževanje, ki ste jo ustvarili.
Kako prezreti skrbniško mesto v načinu vzdrževanja Django
Če želite omogočiti, da vaše skrbniško mesto še naprej deluje tudi v načinu vzdrževanja, je django-način vzdrževanja ponuja nastavitev, imenovano MAINTENANCE_MODE_IGNORE_ADMIN_SITE. To nastavitev morate dodati v svoj nastavitve.py datoteko in jo nastavite na Prav:
MAINTENANCE_MODE_IGNORE_ADMIN_SITE = Prav
Privzeta vrednost zgornje nastavitve je False; zato bo na vaše skrbniško mesto vplivala stran z načinom vzdrževanja, če je ne nastavite Prav.
Kako prezreti pogled, ki temelji na določenih funkcijah, v načinu vzdrževanja Django
The django-vzdrževalni način ponuja dekorater za preprečitev določenega pogleda ali strani, kot je O tem strani vašega spletnega mesta – od prehoda v vzdrževalni način. Če želite to narediti, najprej uvozite dekorater v svoj views.py modul:
od vzdrževalni_način.dekoraterji uvoz prisilno_vzdrževalni_način_izklopljen
Ko uvozite dekorater, ga dodajte svojemu pogledu takole:
@force_maintenance_mode_off
defime_pogleda(prošnja):
# izvedite logiko pogleda
# nikoli ne vrni odgovora 503
Po pravilni implementaciji dekoraterja bo URL za ta določen pogled postal dostopen vašim uporabnikom.
Kako prezreti določen pogled, ki temelji na razredu, v načinu vzdrževanja Django
Ignoriranje pogleda, ki temelji na razredu, je podobno ignoriranju pogleda, ki temelji na funkciji. Vendar je najboljši pristop, da to storite v urls.py mapa.
Najprej morate uvoziti prisilno_vzdrževalni_način_izklopljen dekorater v vaši aplikaciji urls.py mapa. Nato ga morate vključiti v svojo URL pot. Tukaj je primer:
od vzdrževalni_način.dekoraterji uvoz prisilno_vzdrževalni_način_izklopljen
od .pogledi uvoz VašPogled
urlvzorci = [
# nikoli ne vrni odgovora 503
pot('', force_maintenance_mode_off (YourView.as_view()), name='my_view'),
]
Prepričajte se, da uvozite tudi druge potrebne stvari, kot je pot in vaš razredni pogled.
Kako vklopiti način vzdrževanja za pogled, ki temelji na določeni funkciji
- Če želite vklopiti način vzdrževanja za en pogled, najprej izklopite način vzdrževanja v svojem nastavitve.py datoteko tako:
MAINTENANCE_MODE = False
- Naprej, v vašem views.py, morate uvoziti prisilni_način_vzdrževanja_vklopljen dekorater in ga dodajte svojemu pogledu:
od vzdrževalni_način.dekoraterji uvoz prisilni_način_vzdrževanja_vklopljen
@force_maintenance_mode_on
defime_pogleda(prošnja):
# Izvedite logiko pogleda
# Vedno vrni odgovor 503
Kako vklopiti način vzdrževanja za pogled, ki temelji na določenem razredu
- Najprej bi morali v svojem nastavitve.py mapa:
MAINTENANCE_MODE = False
- Naprej, v vašem urls.py, morate uvoziti prisilni_način_vzdrževanja_vklopljen dekorater in ga dodajte zahtevani poti URL:
od vzdrževalni_način.dekoraterji uvoz prisilni_način_vzdrževanja_vklopljen
od .pogledi uvoz VašPogledurlvzorci = [
# Vedno vrni odgovor 503
pot('', force_maintenance_mode_on (YourView.as_view()), name='my_view'),
]
Kako uporabiti drugo ime predloge za način vzdrževanja Django
Privzeto je django-način vzdrževanja paket išče a templates/503.html predlogo. Lahko se odločite, da to preglasite v nastavitve.py mapa.
Recimo, da imate ločeno mapo za obravnavanje napak v vaši aplikaciji; boste želeli vključiti svoje 503.html predlogo v tej mapi. Vaša predloga bo torej notri templates/errors/503.html.
Privzeta nastavitev za to konfiguracijo je naslednja:
MAINTENANCE_MODE_TEMPLATE = "503.html"
Če ga želite preglasiti, morate dodati drugo pot, ki kaže na stran z napako. Tukaj je primer:
MAINTENANCE_MODE_TEMPLATE = "napake/503.html"
Če želite, lahko spremenite tudi ime datoteke in vse bo delovalo v redu, če dodate potrebne konfiguracije.
Poleg zgornjih konfiguracij je django-način vzdrževanja ponuja druge zanimive konfiguracije, ki vam pomagajo prilagoditi način vzdrževanja vaše aplikacije vašim posebnim potrebam. O teh konfiguracijah lahko preberete v dokumentacija django-maintenance-mode.
Uporabite način vzdrževanja, da zagotovite brezhibne posodobitve in izboljšano uporabniško izkušnjo v svoji aplikaciji
Izkoriščanje načina vzdrževanja v vaši aplikaciji lahko olajša stvari za vas in vaše uporabnike. Če med posodobitvami ali vzdrževalnimi opravili začasno onemogočite dostop do celotne aplikacije ali njenega dela, lahko zmanjšate motnje in napake, ki lahko nastanejo zaradi sočasnih uporabniških interakcij.
Uporaba vzdrževalnega načina vam ne bo omogočila le učinkovitega izvajanja potrebnih posodobitev, temveč tudi dokazuje zavezanost zagotavljanju nemotene in neprekinjene izkušnje za vaše uporabnike.
Poleg načina vzdrževanja lahko zagotovite tudi predloge po meri za druge napake v Djangu.