Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti farg’ona filiali dasturiy injiniring va raqamli iqtisodiyot fakulteti


Download 1.31 Mb.
bet1/3
Sana19.04.2023
Hajmi1.31 Mb.
#1362496
  1   2   3
Bog'liq
django mustaqil ish

    Bu sahifa navigatsiya:
  • Reja

MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI
UNIVERSITETI FARG’ONA FILIALI
DASTURIY INJINIRING VA RAQAMLI IQTISODIYOT FAKULTETI

651-19 guruh talabasi
Mashrabov Mashhurbekning
 Web texnologiyalarida Django fremvorki fanidan
MUSTAQIL ISHI


Mavzu: Django modellarni bog`lash.
Bajardi: Mashrabov M.
Tekshirdi: Soliyev B.

Reja


I. Kirish 3
II. Asosiy qism 5
1.One-to-One munosabati. 5
2.Many-to-One munosabati. 8


I. Kirish


Relationship nima?
Ikki turdagi obyektlar o'rtasidagi har qanday bog'lanish "relationship" deb ataladi. Relationship ikkita relyatsion ma'lumotlar bazasi jadvallari o'rtasida ishlaydi, bunda bir jadval boshqa jadvalning asosiy kalitining tashqi kalitiga ega. Aloqalar bizga ma'lumotlarni turli jadvallarga bo'lish va saqlash imkonini beradi.

Django model munosabatlarini qo'llab-quvvatlaydi va siz turli modellarning bir-biriga qanday bog'liqligini aniqlash uchun model munosabatlaridan foydalanishingiz mumkin. Model aloqalari sizga murakkab ma'lumotlar tuzilmalarini yaratish va Django ilovangizda ma'lumotlar qanday saqlanishini aniqlash imkonini beradi. Djangoda model munosabatlarning uchta turi mavjud: birga-bir munosabatlar, ko'p-bir munosabatlar va ko'p-ko'p munosabatlar.



Masalan:
Keling, xodimning ma'lumotlarini uning bo'limi nomi va identifikatori bilan saqlamoqchi bo'lgan ishni ko'rib chiqaylik. Bo'lim muhandislik bo'limi, tahlilchilar bo'limi, rivojlanish bo'limi, IT va xizmatlar bo'limi yoki boshqa bo'lim bo'lishi mumkin. Buning uchun biz bo'lim tafsilotlari bilan xodimlar ma'lumotlarini saqlash uchun jadval yaratishimiz mumkin. Model quyidagicha ko'rinishi mumkin:



Ammo bu modelda ba'zi muammolar mavjud. Agar kelajakda biz tahlilchi bo'limni o'chirib tashlasak, unda biz xodimlar jadvaliga o'tishimiz va har bir xodim ma'lumotlarini qo'lda o'zgartirishimiz kerak. Bu og'riqli, to'g'rimi? Agar biz bo'lim nomini o'zgartirayotgan bo'lsak ham, har bir qatorda buni qo'lda o'zgartirishimiz kerak. Aloqalar bu muammolarni bartaraf etish yo'li sifatida yaratilgan. Ushbu ma'lumotni hisobga olgan holda, biz munosabatlarda ham shunday qilamiz.

Keling, ikkita turdagi ob'ektlarni yarataylik, bo'lim modeli (dept_id, dept_name, dept_desc) va ishchi modeli (emp_id,emp_name, emp_email, emp_address, dept_id). Birinchi ob'ekt barcha bo'lim ma'lumotlarini saqlaydi, ikkinchisi esa barcha xodimlar ma'lumotlarini saqlaydi. Bundan tashqari, xodim modelida dept_id nomli xorijiy kalit mavjud bo'lib, u bo'lim modelining asosiy kaliti bo'ladi. Endi biz bo'lim jadvalidagi har qanday qiymatni o'zgartirganimizda, u xodimlar jadvalida ham aks etadi.

Mavjud munosabatlarning uch turi mavjud.


  1. One-to-One munosabatlar

  2. Many-to-One munosabatlar

  3. Many-to-Many munosabatlar


Download 1.31 Mb.

Do'stlaringiz bilan baham:
  1   2   3




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