Django nima?
Django — bu Python dasturlash tili asosida yaratilgan, high-level veb-freymvork. U tez va pragmatik ishlab chiquvchilar uchun mo'ljallangan.
Django "batteries included" falsafasiga amal qiladi — ya'ni barcha zaruriy vositalar tayyor holda keladi: admin panel, ORM, autentifikatsiya, xavfsizlik va boshqalar.
2005-yilda yaratilgan Django bugungi kunda Instagram, Pinterest, Mozilla, Disqus kabi yirik kompaniyalar tomonidan ishlatiladi.
MVT Arxitekturasi
Django MVC ga o'xshash MVT (Model–View–Template) pattern asosida ishlaydi. Har bir qism aniq vazifaga ega.
Model
Ma'lumotlar bazasi
bilan ishlash
View
Biznes logika
va HTTP
Template
HTML shablon
va ko'rinish
from django.db import models # Model yaratish class Article(models.Model): title = models.CharField(max_length=200) content = models.TextField() created = models.DateTimeField(auto_now_add=True) author = models.ForeignKey('auth.User', on_delete=models.CASCADE) def __str__(self): return self.title class Meta: ordering = ['-created']
Asosiy Imkoniyatlar
Django bir freymvork ichida barcha kerakli vositalarni taqdim etadi — boshqa kutubxonalar kerak emas.
Xavfsizlik
SQL injection, XSS, CSRF va clickjacking'dan himoya standart holda o'rnatilgan. Xavfsizlik siz uchun allaqachon hal qilingan.
built-inTez Ishlab Chiqish
Kam kod bilan ko'p narsa qiling. Django kodni qayta ishlatishni rag'batlantiradi va boilerplate ni minimallashtiradi.
rapidORM (Object Relational Mapping)
SQL yozmasdan bazalar bilan ishlang. PostgreSQL, MySQL, SQLite, Oracle — barchasi qo'llaniladi.
databaseAdmin Panel
Bir qator kodda to'liq admin interfeys tayyor. Ro'yxatdan o'tish, login, foydalanuvchilarni boshqarish — barchasi bepul.
auto-generatedURL Routing
Chiroyli va tushunarli URL'lar yarating. Regex va path convertorlar yordamida murakkab marshrutlash imkoni bor.
urls.pyMiqyoslilik
Millionlab foydalanuvchilarga xizmat ko'rsatishga tayyor. Instagram bu bilan 2 milliarddan ortiq foydalanuvchiga xizmat qiladi.
scalable5 Qadamda Django
Sifirdan birinchi Django ilovangizni ishga tushiring — 10 daqiqada.
O'rnatish
Terminal/CMD ochib, pip install django buyrug'ini yozing. Django barcha bog'liqliklar bilan birga o'rnatiladi.
Loyiha Yaratish
django-admin startproject myproject cd myproject python manage.py startapp blog
Model Yaratish va Migratsiya
# Migratsiyalarni tayyorlash python manage.py makemigrations # Bazaga qo'llash python manage.py migrate
Superuser Yaratish
python manage.py createsuperuser # Username, email, parol kiriting
Serverni Ishga Tushirish
python manage.py runserver # → http://127.0.0.1:8000/ # → http://127.0.0.1:8000/admin/
Tayyor! Brauzeringizda 127.0.0.1:8000 ni oching.
Loyiha Strukturasi
myproject/ ├── myproject/ │ ├── __init__.py │ ├── settings.py ← Sozlamalar │ ├── urls.py ← URL yo'naltiruvchi │ ├── asgi.py ← ASGI server │ └── wsgi.py ← WSGI server ├── blog/ ← Ilovangiz │ ├── migrations/ │ ├── admin.py ← Admin ro'yxatga olish │ ├── apps.py │ ├── models.py ← Ma'lumotlar modeli │ ├── tests.py │ ├── urls.py ← Ilova URL'lari │ └── views.py ← Ko'rinish mantiqi ├── templates/ ← HTML shablonlar ├── static/ ← CSS, JS, rasm └── manage.py ← Boshqaruv skripti
Afzallik va Kamchiliklar
✅ Afzalliklari
- Tez ishlab chiqish — kam kod, ko'p natija
- Xavfsizlik standart holda yaxshi sozlangan
- Katta hamjamiyat va kuchli hujjatlar
- Ko'plab tayyor ilovalar (packages)
- REST API uchun DRF integratsiyasi
- Production uchun tayyor, battle-tested
⚠️ Kamchiliklari
- Kichik loyihalar uchun ortiqcha yuk
- Flask/FastAPI ga nisbatan sekinroq
- Django ORM murakkab so'rovlarda qiyin
- Monolithic arxitektura — microservice qiyin
- Real-time uchun (WebSocket) qo'shimcha kerak
- Async (ASGI) Django 3.1+ dan boshlab
Kim Ishlatadi?
Dunyoning yirik kompaniyalari Django'ni production'da ishlatadi.
Foydali Resurslar
Django o'rganish uchun eng yaxshi manbalar.