Django - skatījumu un vietrāžu URL atrisināšana

Satura rādītājs
Skatus un vietrāžus URL neizsauc tieši mūsu kods, tas ir saistīts ar lietojumprogrammu dinamisko raksturu. Iemesls ir tāds, ka, jo vispārīgāka ir veidlapa, to ir iespējams izmantot daudz vairākos gadījumos.
Tāpēc pareizais veids ir izmantot dažādas funkcijas, kas ļauj mums atrisināt maršrutus no skata uz URL vai no URL uz skatu, tāpēc mums ir daži rīki, ko sauc dekoratori.
Notiek pāreja no URL uz skatījumiem
viedokli, pēc ieteicamās prakses mūsu kods neizsauc tieši, bet gan tie tiek izsaukti, zvanot URL, šos zvanus apstrādā un apkalpo dispečeru sistēma Django.
Viens no galvenajiem aspektiem šajā brīdī ir tas Django izmanto regulāras izteiksmes lai izveidotu URL, kas izsauks mūsu skatu, pateicoties tam, mēs varam nodot dažādus parametrus un tādējādi pievienot funkcionalitāti mūsu uzskatiem.
A url modelis ietver šādus aspektus:
  • Regulārā izteiksme, kas ļauj mums uzņemt URL, ko esam ievietojuši kā paraugu.
  • Atsauce uz skatu, kas tiks izsaukts.
  • Argumentu vārdnīca, kas tiks nodota katru reizi, kad tiek izsaukts skats.
  • Nosaukums, kas tiks izmantots kā atsauce, lai varētu veikt skata apgrieztos zvanus.
Vietrāžu URL skatījumu risināšana
Mūsu lietojumprogrammās daudzas reizes mums ir jāizsauc citi viedokļi vai resursi, izmantojot URL, tomēr šo URL stingra kopēšana vai kodēšana nav laba prakse, jo, piemēram, ja mūsu programmā notiek izmaiņas, iedomājieties, ka jāmaina 20 vai 30 atsauces uz URL, šim nolūkam mēs varam izmantot dažādas metodes, lai mūsu lietojumprogramma meklētu URL, to nekopējot, viena no šīm metodēm ir izmantot Permalink dekorators ko mēs varam redzēt nākamajā punktā.
Dekorētājs Permalink
Katrā modelī mums ir pieeja metodei get_absolute_url () kas ļauj mums tieši piekļūt detalizētai objekta lapai, nezinot, kā jāveido URL, tomēr šī metode neļauj mums nodot argumentus, jo tā ir tikai atgriezta saite.
Lai paplašinātu funkcionalitāti, mums ir iespēja izmantot un atdot parametrus tā, it kā tie būtu no metodes get_absolute_url ().
Lai to izdarītu, jums jāievēro šāda struktūra:
  • pirmā vērtība ir saucamā skata nosaukums, ja skatam ir nosaukums, tas ir jāizmanto, pretējā gadījumā mēs varam izmantot importa ceļš no redzes. Šī vērtība vienmēr ir nepieciešama.
  • otrā vērtība Tas ir pozicionālo argumentu kopums, kas jāpiemēro skatam, ja nē, mēs varam atstāt šo parametru tukšu.
  • trešā vērtība tā ir vārdnīca, kas savieno argumentus ar to attiecīgajām vērtībām, šīs vērtības ir jānodod skatam, ja skats nesaņem neko, mēs varam izslēgt šo vērtību no zvana.
Tālāk redzēsim, kā mēs to tulkojam kodā Django, šim nolūkam mēs iekļausim izmantošanu dekorators modelī:

Kā redzam attēlā redzamajā kodā, mēs saucam par skatu library_article detalizēti, otro vērtību mēs nododam tukšā, jo tas nav nepieciešams, un trešajā vērtībā mēs norādām, ka object_id jābūt piesaistītam self.id tas ir, līdz paša modeļa id, tad pēdējā rindā mēs izmantojam dekorators.Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave