Uzziniet, kā efektīvi aktivizēt apkopes režīmu savā Django lietotnē, vienlaikus nodrošinot lietotājiem netraucētu pieredzi.
Django lietotnes uzturēšanas režīms ir ļoti svarīgs, veicot atjauninājumus, atrisinot tehniskas problēmas vai veicot būtiskas izmaiņas lietojumprogrammā.
Īslaicīgi ierobežojot lietotāja piekļuvi un parādot apkopes lapu, varat nosūtīt svarīgus ziņojumus, nodrošināt vienmērīgu atjaunināšanas procesu un novērst iespējamos konfliktus vai datu zudumus.
Neatkarīgi no tā, vai esat izstrādātājs vai sistēmas administrators, izpratne par Django uzturēšanas režīma ieviešanu ļaus jums uzturēt uzticamu un lietotājam draudzīgu lietojumprogrammu.
Kā lietot Django apkopes režīma paketi
Pateicoties plašajam kopienas atbalstam, Django piedāvā plašu pakešu klāstu, kas var ievērojami uzlabot jūsu izstrādes procesu, ļaujot strādāt ātrāk un efektīvāk. Šīs pakotnes atvieglo atkārtotu uzdevumu slogu, nodrošinot vienmērīgāku pieredzi jums kā izstrādātājam.
Viena no Django piedāvātajām pakotnēm ir
django uzturēšanas režīms pakotni, kuru varat izmantot, lai ieslēgtu Django lietotni uzturēšanas režīmā. The django uzturēšanas režīms pakotne darbojas, parādot lapu 503HTTP statusa kods. Tu vari izmantot django uzturēšanas režīms savā lietotnē, veicot tālāk norādītās darbības.1. darbība: instalējiet Django uzturēšanas režīmu savā virtuālajā vidē
- Tavā projekta virtuālajā vidē, instalējiet pakotni ar Python pip pakotņu pārvaldnieku. Palaidiet šo komandu savā komandrindas interfeiss (CLI):
pip instalējiet django uzturēšanas režīmu
- Pēc pakotnes instalēšanas pievienojiet apkopes_režīms uz INSTALLED_APPS sarakstā jūsu settings.py fails:
INSTALLED_APPS = [
# dažas citas lietotnes,
'maintenance_mode',
] - Pēc tam pievienojiet starpprogrammatūru django uzturēšanas režīms uz VIDUSPROGRAMMA sarakstā jūsu settings.py fails:
VIDUSPROGRAMMA = [
# kāda cita starpprogrammatūra no django,
'maintenance_mode.middleware. MaintenanceModeMiddleware',
]
2. darbība. Izveidojiet HTML veidni, lai parādītu apkopes režīma ziņojumu
Priekš django uzturēšanas režīms pakotni, lai parādītu 503. kļūdas lapu, tā meklē a 503.html veidnes failā veidnes direktoriju. Lai to iestatītu, rīkojieties šādi:
- Izveidojiet mapi ar nosaukumu veidnes savā saknes direktorijā.
- Atveriet savu jaunizveidoto veidnes mapi un izveidojiet failu ar nosaukumu 503.html.
- Tavā settings.py failu, atrodiet VEIDNES iestatījumus un konfigurēt REŽ saraksts tajā ir šāds:
"DIRS": [BASE_DIR/'veidnes'],
- Atver savu 503.html failu un ierakstiet HTML kodu, lai lietotājiem parādītu kļūdas ziņojumu. Šeit ir vienkāršs kods, ko varat izmantot:
html>
<html>
<galvu>
<metarakstzīmju kopa="UTF-8">
<virsraksts>503 Pakalpojums nav pieejamsvirsraksts>
<stils>
body {
fontu saime: Arial, sans-serif;
fona krāsa: #f5f5f5;
piemale: 0;
polsterējums: 0;
}
.container-503 {
maksimālais platums: 600 pikseļi;
piemale: 100px auto;
teksta līdzināšana: centrs;
}
h1 {
fonta izmērs: 48 pikseļi;
krāsa: #333333;
piemale-apakšā: 20 pikseļi;
}
p {
fonta izmērs: 18 pikseļi;
krāsa: #666666;
piemale-apakšā: 30 pikseļi;
}
.btn-503 {
displejs: inline-block;
polsterējums: 12px 24px;
fona krāsa: #007bff;
krāsa: #ffffff;
teksta noformējums: nav;
apmales rādiuss: 4 pikseļi;
fonta izmērs: 18 pikseļi;
}
stils>
galvu>
<ķermeni>
<divklasē = "konteiners-503">
<h1>503 Pakalpojums nav pieejamsh1>
<lpp>
Hmm! Pašlaik strādājam pie dažiem atjauninājumiem.
Atvainojamies par sagādātajām neērtībām un pateicamies par jūsu pacietību.
lpp>
<lpp>Lūdzu, apmeklējiet vietni vēlāk vai sazinieties ar mūsu atbalsta komandulpp>
<ahref = "mailto: [email protected]"klasē = "btn-503">
Sazinieties ar atbalsta dienestu
a>
div>
ķermeni>
html>
3. darbība: ieslēdziet uzturēšanas režīmu un restartējiet serveri
Tavā settings.py failu, pievienojiet šo kodu, lai ieslēgtu apkopes režīmu:
MAINTENANCE_MODE = Taisnība
Restartējiet izstrādes serveri, ievadot šo savā CLI:
python manage.py runserver
Pārejot uz savu vietni, jums vajadzētu redzēt izveidoto apkopes lapu.
Kā ignorēt administratora vietni Django uzturēšanas režīmā
Lai jūsu administratora vietne turpinātu darboties pat uzturēšanas režīmā, django uzturēšanas režīms nodrošina iestatījumu, ko sauc MAINTENANCE_MODE_IGNORE_ADMIN_SITE. Šis iestatījums ir jāpievieno savā settings.py failu un iestatiet to uz Taisnība:
MAINTENANCE_MODE_IGNORE_ADMIN_SITE = Taisnība
Iepriekš minētā iestatījuma noklusējuma vērtība ir Nepatiesi; tādēļ jūsu administratora vietni ietekmēs uzturēšanas režīma lapa, ja to neiestatīsit Taisnība.
Kā ignorēt uz noteiktu funkciju balstītu skatu Django apkopes režīmā
The django uzturēšanas režīms pakotne nodrošina dekoratoru, lai novērstu noteiktu skatu vai lapu, piemēram, Par jūsu vietnes lapa — no pāriešanas uz uzturēšanas režīmu. Lai to izdarītu, vispirms importējiet dekoratoru savā views.py modulis:
no apkopes_režīms.dekoratori imports force_maintenance_mode_off
Pēc dekoratora importēšanas pievienojiet to savam skatam šādi:
@force_maintenance_mode_off
defskata_nosaukums(pieprasījums):
# veikt skata loģiku
# nekad neatgriez 503 atbildi
Pēc dekoratora pareizas ieviešanas jūsu lietotājiem būs pieejams šī konkrētā skata URL.
Kā ignorēt noteiktu klases skatījumu Django uzturēšanas režīmā
Uz klasi balstīta skata ignorēšana ir līdzīga uz funkciju balstīta skata ignorēšanai. Tomēr labākā pieeja ir to darīt urls.py failu.
Pirmkārt, jums ir jāimportē force_maintenance_mode_off dekorētājs jūsu lietotnē urls.py failu. Pēc tam jums tas jāiekļauj savā URL ceļā. Šeit ir piemērs:
no apkopes_režīms.dekoratori imports force_maintenance_mode_off
no .skatījumi imports Jūsu skats
urlpatterns = [
# nekad neatgriez 503 atbildi
ceļš ('', force_maintenance_mode_off (YourView.as_view()), name='Mans skats'),
]
Noteikti importējiet arī citas nepieciešamās lietas, piemēram ceļš un jūsu klases skatījums.
Kā ieslēgt apkopes režīmu konkrētam uz funkcijām balstītam skatam
- Lai ieslēgtu apkopes režīmu vienam skatam, vispirms izslēdziet apkopes režīmu savā settings.py failu, rīkojoties šādi:
MAINTENANCE_MODE = Nepatiesi
- Tālāk, jūsu views.py, jums vajadzētu importēt force_maintenance_mode_on dekoratoru un pievienojiet to savam skatam:
no apkopes_režīms.dekoratori imports force_maintenance_mode_on
@force_maintenance_mode_on
defskata_nosaukums(pieprasījums):
# Veiciet skata loģiku
# Vienmēr atgriezt 503 atbildi
Kā ieslēgt apkopes režīmu noteiktam klases skatam
- Pirmkārt, jums ir jāizslēdz apkopes režīms settings.py fails:
MAINTENANCE_MODE = Nepatiesi
- Tālāk, jūsu urls.py, jums vajadzētu importēt force_maintenance_mode_on dekoratoru un pievienojiet to vajadzīgajam URL ceļam:
no apkopes_režīms.dekoratori imports force_maintenance_mode_on
no .skatījumi imports Jūsu skatsurlpatterns = [
# Vienmēr atgriezt 503 atbildi
ceļš ('', force_maintenance_mode_on (YourView.as_view()), name='Mans skats'),
]
Kā izmantot citu veidnes nosaukumu Django uzturēšanas režīmam
Pēc noklusējuma django uzturēšanas režīms iepakojums meklē a templates/503.html veidne. Varat izlemt to ignorēt sadaļā settings.py failu.
Pieņemsim, ka jums ir atsevišķa mape, lai apstrādātu programmas kļūdas; jūs vēlaties iekļaut savu 503.html veidni šajā mapē. Tātad jūsu veidne tiks ievietota templates/errors/503.html.
Šīs konfigurācijas noklusējuma iestatījums ir šāds:
MAINTENANCE_MODE_TEMPLATE = "503.html"
Lai to ignorētu, jums jāpievieno cits ceļš, kas norāda uz jūsu kļūdas lapu. Šeit ir piemērs:
MAINTENANCE_MODE_TEMPLATE = "errors/503.html"
Varat arī mainīt faila nosaukumu, ja vēlaties, un viss darbosies labi, ja pievienosit nepieciešamās konfigurācijas.
Neatkarīgi no iepriekš minētajām konfigurācijām, django uzturēšanas režīms pakotne nodrošina citas interesantas konfigurācijas, lai palīdzētu jums pielāgot lietotnes uzturēšanas režīmu jūsu īpašajām vajadzībām. Par šīm konfigurācijām varat lasīt django uzturēšanas režīma dokumentācija.
Izmantojiet uzturēšanas režīmu, lai savā lietotnē nodrošinātu nevainojamus atjauninājumus un uzlabotu lietotāja pieredzi
Apkopes režīma izmantošana lietotnē var atvieglot darbu jums un jūsu lietotājiem. Atjaunināšanas vai apkopes darbu laikā īslaicīgi atspējojot piekļuvi visai lietotnei vai tās daļai, varat samazināt traucējumus un kļūdas, kas var rasties no vienlaicīgas lietotāju mijiedarbības.
Apkopes režīma izmantošana ļaus ne tikai efektīvi veikt nepieciešamos atjauninājumus, bet arī apliecinās apņemšanos nodrošināt lietotājiem vienmērīgu un nepārtrauktu pieredzi.
Papildus uzturēšanas režīmam varat nodrošināt arī pielāgotas veidnes citām Django kļūdām.