Uzlabojiet savas Django lietotnes izskatu, izstrādājot personalizētu 404 kļūdu lapu, nevis paļaujoties uz vienkāršu noklusējuma lapu.

Kļūdu lapas ir izplatītas tīmekļa lietojumprogrammās. Django līdzstrādnieki ir nodrošinājuši noklusējuma lapas dažām no šīm kļūdām, piemēram, kļūdai 404 (nav atrasts). Taču kā izstrādātājam vislabāk ir izveidot kļūdu lapu, kas atbilst pārējās tīmekļa lietojumprogrammas dizaina principiem.

Pielāgotas 404 lapas izveide programmā Django

Kļūda 404 ir daļa no vairākām HTTP statusa kodi izmanto pārlūkprogramma, lai norādītu servera atbildi uz lietotāja veiktajiem pārlūka pieprasījumiem. Django nodrošina noklusējuma veidnes dažiem no šiem statusa kodiem, un noklusējuma 404 kļūdas lapa pakalpojumā Django izskatās šādi:

Iepriekš minētais attēls neizskatās jauki, un lielākā daļa uzņēmumu to nepieņems savā vietnē. Lai mainītu šo lapu uz pielāgotu 404 lapu pēc savas izvēles, veiciet tālāk norādītās darbības.

1. darbība. Izveidojiet skatu, lai novērstu 404 kļūdu

Atver savu

instagram viewer
views.py failu un izveidojiet skatu 404 kļūdas lapai. Šajā skatā ir jāatgriež veidne, kurā ir jūsu pielāgotās 404. kļūdas lapas noformējums. Šeit ir vienkāršs Django skats, ko varat izmantot savā projektā:

no django.shortcuts imports renderēt

# pielāgots 404 skats
defcustom_404(pieprasījums, izņēmums):
atgriezties renderēt (pieprasīt, "404.html", statuss=404)

Iepriekš minētais koda fragments ir a Python funkcija (šajā gadījumā vēlams saukts par Django skatu), kas izmanto divus funkciju argumentus; pieprasījumu, un izņēmums. Otrais arguments -izņēmums— ļauj piekļūt izņēmuma objektam, kas izraisīja kļūdu 404.

Jums vajadzētu aizstāt “404.html” iepriekš redzamajā skatā ar pareizo ceļu uz jūsu kļūdas 404 HTML veidnes lapu.

2. darbība. Izveidojiet veidni savai 404 kļūdai

Izveidojiet jaunu HTML failu, kas satur jūsu pielāgoto dizainu 404. kļūdas lapai. Dizainam ir jāatbilst pārējai lietojumprogrammai. Šeit ir vienkārša HTML veidne, ko varat izmantot savā projektā. Jums vajadzētu mainīt šo veidni pēc saviem ieskatiem:

 404.html veidne 
html>
<htmllang="lv">
<galvu>
<metarakstzīmju kopa="UTF-8">
<metanosaukums="skata logs"saturu="platums = ierīces platums, sākotnējais mērogs = 1,0">
<virsraksts>404 lapa nav atrastavirsraksts>
<saite
importēt Bootstrap
href=" https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
rel="stila lapa"
integrity="sha384-KK94CHFLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ"
crossorigin="anonymous">
pielāgots css
<stils>
body {
displejs: flex;
flex-direction: kolonna;
attaisnot-saturs: centrs;
izlīdzināt vienumus: centrs;
augstums: 100vh;
fontu saime: Arial, sans-serif;
}

.container {
teksta līdzināšana: centrs;
maksimālais platums: 600 pikseļi;
}

.emoji {
fonta izmērs: 8rem;
piemale-apakšā: 20 pikseļi;
}

h1 {
fonta izmērs: 3rem;
piemale-apakšā: 20 pikseļi;
}

p {
fonta izmērs: 1,5 rem;
piemale-apakšā: 20 pikseļi;
}

.btn {
fonta izmērs: 1,25 rem;
polsterējums: 10 pikseļi 20 pikseļi;
}
stils>
galvu>
<ķermenis>
<divklasē="konteiners">
<divklasē="emoji">😕div>
<h1>Hmm! Lapa nav atrastah1>
<lpp>Mēs nevarējām atrast lapu, kuru meklējāt.lpp>
<aklasē="btn btn-primary"href="/">Dodieties atpakaļ uz sākumlapua>
div>
ķermenis>
html>

3. darbība. Pārveidojiet sava projekta URL failu

Jūsu projekta līmenī (kur jūsu settings.py fails ir), atveriet savu urls.py failu un novirziet kļūdas 404 apdarinātāju uz skatu, ko izveidojāt, lai apstrādātu 404 kļūdu. Tiek izsaukts kļūdas 404 apdarinātājs apdarinātājs404. Lai norādītu apdarinātājs404 pēc jūsu domām, jums jāievēro šāds formāts:

apdarinātājs404 = 'app_name.views.custom_404_view_name'

Ja jūsu lietotne tiek izsaukta recepte, un skats tiek saukts custom_404, tad jums vajadzētu mainīt iepriekš minēto formātu šādi:

apdarinātājs404 = "recipe.views.custom_404"

Noteikti dariet to sava projekta, nevis lietotnes līmenī. Tur ir atšķirības starp projektu un lietotni Django.

4. darbība: pārbaudiet savu jauno 404. kļūdas lapu

Lai pārbaudītu savu jauno kļūdu lapu, palaidiet izstrādes serveri un savā lietojumprogrammā pārejiet uz neesošu lapu. Serveri var palaist, komandrindas rīkā (CLI) izpildot šo komandu:

python manage.py runserver

Lai darbotos iepriekš minētā komanda, jums jāatrodas sava projekta saknes direktorijā, t.i., mapē, kurā pārvaldīt.py failu dzīvi.

Kad serveris ir startēts, pārbaudiet savu pielāgoto 404 lapu, pārejot uz neesošu lapu, piemēram, http://127.0.0.1:8000/hello. Ja visu izdarījāt pareizi, jums vajadzētu redzēt savu pielāgoto 404 kļūdas lapu.

Ja jūsu pielāgotā 404. kļūdas lapa neparādās, apsveriet iespēju pārbaudīt savus skatus, lai pārliecinātos, ka HTML veidnē esat ierakstījis pareizo ceļu. renderēt () funkciju, jo tā ir izplatīta problēma.

Pielāgotas kļūdu lapas nodrošina labāku lietotāja pieredzi

Ja jūsu lietojumprogrammā ir pielāgota kļūdu lapa, tas uzlabos jūsu lietotāju pieredzi, saskaroties ar kļūdām. Tā vietā, lai redzētu vispārīgu kļūdas ziņojumu, pielāgotā kļūdu lapa var sniegt precīzāku informāciju par kļūdu un ieteikt iespējamos risinājumus.

Tas var palīdzēt lietotājiem saprast, kas nogāja greizi un kā to novērst, samazinot neapmierinātību un palielinot viņu uzticību jūsu lietojumprogrammai. Varat arī padarīt lapu iekļaujošu, pievienojot pieejamības funkcijas.