Djangoga kirish
Tags: python, django, web, backend
Published: 2023-05-14 19:32:26

## Django o'zi nima?

Django bu Python freymvork bo'lib, Python yordamida web-saytlar yaratishni osonlashtiradi.

Django web-ilovalaringizni yaratishga e'tiboringizni qaratishingiz uchun qiyin narsalarni o'z zimmasiga oladi.

Django DRY (Don't Repeat Yourself) deb ham ataladigan tarkibiy qismlarning qayta ishlatilishiga urg'u beradi va kirish tizimi, ma'lumotlar bazasiga ulanish va CRUD amallari (Create Read Update Delete) kabi foydalanishga tayyor xususiyatlar bilan birga keladi.

> Django ayniqsa ma'lumotlar bazasiga asoslangan web-saytlar uchun as qotadi.

---
## Django qanday ishlaydi?

Django MVT dizayn namunasiga amal qiladi (Model View Template).

- Model - Siz taqdim qilmoqchi bo'lgan ma'lumotlar, odatda ma'lumotlar bazasidan olingan ma'lumotlar.
- View - foydalanuvchi so'rovi asosida tegishli template va tarkibni qaytaradigan so'rovni qayta ishlash moslamasi.
- Template - matn fayli (masalan HTML fayli), web-sahifaning tartibini o'z ichiga olgan, ma'lumotlarni mantiqan qanday ko'rsatish kerakligi.

---
## Model

Model ma'lumotlar bazasidan ma'lumotlarni taqdim etadi.

Djangoda ma'lumotlar Object Relational Mapping (ORM) sifatida taqdim etiladi, bu ma'lumotlar bazalari bilan ishlashni osonlashtirish uchun mo'ljallangan texnikadir.

Ma'lumotlar bazasidan ma'lumotlarni olishning eng keng tarqalgan usuli bu SQL. SQL bilan bog'liq muammolardan biri shundaki, u bilan ishlash uchun siz ma'lumotlar bazasi tuzilishini juda yaxshi tushunishingiz kerak.

Django, ORM bilan, murakkab SQL ifodalarini yozmasdan, ma'lumotlar bazasi bilan aloqa qilishni osonlashtiradi.

Modellar odatda `models.py` deb nomlangan faylga joylanadi.

---
## View

View - bu http so'rovlarini argument sifatida qabul qiladigan, tegishli model(lar)ni import qiluvchi va templatega qanday ma'lumotlarni yuborish kerakligini belgilab beradigan va yakuniy natijani qaytaradigan funksiya yoki metod.

Viewlar odatda `views.py` deb nomlangan faylga joylanadi.

---
## Template

```django
<h1>Mening sahifam</h1>

<p>Mening ismim {{ firstname }}.</p>
```

Ilova templatelari `templates` deb nomlangan papkaga joylanadi.

---
## URLlar

Django shuningdek, web-saytdagi turli sahifalar bo'ylab harakatlanishning ajoyib usulini taqdim etadi.

Agar foydalanuvchi URL manzilini so'rasa, Django uni qaysi viewga yuborishini hal qiladi.

Bu `urls.py` deb nomlangan faylda amalga oshiriladi.

---
## Xo'sh, nimalar sodir bo'lyapti?

Djangoni o'rnatib, birinchi Django web-ilovangizni yaratganingizda va brauzer URL-manzilni so'raganda, asosan shunday bo'ladi:

1. Django URL manzilini oladi, `urls.py` faylini tekshiradi va URL manziliga mos keladigan viewni chaqiradi.
2. `views.py` da joylashgan ko'rinish tegishli modellarni tekshiradi.
3. Modellar `models.py` faylidan import qilingan.
4. Keyin view ma'lumotlarni `templates` papkasida joylashgan templatega yuboradi.
5. Template HTML va Django teglarini o'z ichiga oladi va ma'lumotlar bilan u tayyor HTML tarkibini brauzerga qaytaradi.

Django bundan ham ko'proq narsani qila oladi, lekin bu asosan siz ushbu qo'llanmada o'rganadigan narsa va Django bilan yaratilgan oddiy web-ilovadagi asosiy qadamlar.

---
## Django tarixi

Django 2003 yilda Lawrence Journal-World tomonidan gazetadagi qisqa ish muddatlarni qondirish va shu bilan birga tajribali web dasturchilarning talablarini qondirish uchun ixtiro qilingan.

Dastlabki ommaga 2005 yil iyul oyida chiqarildi.

Djangoning so'nggi versiyasi 4.2.1 (2023 yil).