Veb-ramka sifatida Django htmlni dinamik ravishda yaratish uchun qulay usulga muhtoj. Eng keng tarqalgan yondashuv shablonlarga tayanadi


Download 1.02 Mb.
Pdf ko'rish
bet14/15
Sana17.01.2023
Hajmi1.02 Mb.
#1097921
1   ...   7   8   9   10   11   12   13   14   15
Bog'liq
1. Umumiy koʻrinish (Overview) (1)

jinja2.Environment 
yordamida shablonda mavjud global o'zgaruvchilarga kontekst protsessor sifatida 
foydalanadigan funksiyani qo'yish tavsiya etiladi. Keyin shablonda ushbu funktsiyani chaqirishingiz mumkin:
{{
function
(
request
)
}}


https://t.me/django_docs_uz
Ba'zi Django shablonlari kontekst protsessorlari belgilangan qiymatni qaytaradi. Jinja2 shablonlari uchun bu bilvosita 
qatlam kerak emas, chunki siz to'g'ridan-to'g'ri 
jinja2.Environment
-da doimiylarni qo'shishingiz mumkin.
Jinja2 uchun kontekst protsessorlarini qo'shish uchun asl foydalanish holati: 
o So'rovga bog'liq qimmat hisob-kitob qilish. 
o Har bir shablonda natija kerak. 
o Natijani har bir shablonda bir necha marta ishlatish. 
Agar ushbu shartlarning barchasi bajarilmasa, shablonga funktsiyani o'tkazish Jinja2 dizayniga ko'proq mos keladi. 
Standart konfiguratsiya maqsadli ravishda minimal darajada saqlanadi. Agar shablon so'rov bilan taqdim etilsa (masalan, 
render() 
dan foydalanganda), 
Jinja2 
backend kontekstga global 
request

csrf_input 
va 
csrf_token 
qo'shadi. 
Bundan tashqari, ushbu backend Django ta'miga ega muhit yaratmaydi. Django filtrlari va teglari haqida bilmaydi. Django-ga 
xos API-lardan foydalanish uchun ularni muhitda sozlashingiz kerak.
Masalan, siz ushbu tarkib bilan 
myproject/jinja2.py
ni yaratishingiz mumkin:
from
django.templatetags.static
import
static 
from
django.urls
import
reverse 
from
jinja2
import
Environment 
def
environment
(
**
options): 
env 
=
Environment(
**
options) 
env
.
globals
.
update({ 
'static'
: static, 
'url'
: reverse, 
}) 

Download 1.02 Mb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   15




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling