Serializer Javada yozilgan android dastur Pythonda yozilgan serverimizdan ma’lumot
olmoqchi. Muammo shundaki, ular bir-birini to‘g‘ridan-to‘g‘ri tushunda olmaydi.
Demak, API orqali ma’lumot almashganda hamma tushunadigan, standart formatdan
foydalanish kerak. Hozirda ko‘plab APIlar ma’lumot almashish uchun JSON
formatidan foydalanadi. Serializer esa Python va JSON o‘rtasida(bu xususiy hol)
ma’lumotlarni bir turdan boshqa turga o‘tkazadi.
Model, form va serializer ishlashi jihatidan bir-biriga o‘xshash. Uchalasi ham
ma’lumotni bir turdan boshqa turga o‘tkazishga yordam beradi.
•
Model SQL orqali database bilan,
•
form HTML orqali client bilan,
•
serializer JSON orqali API bilan ma'lumot almashishni ta’minlaydi.
Migration Ma’lumotlar bazasi dizaynga o‘zgarish kiritilganda kelajakdagi xatoliklarning
oldini olish yoki yangi xususiyatlar qo‘shish uchun bu o‘zgarishlarni yozib borish
kerak bo‘ladi.
Har bir mana shunday yozilgan o'zgarish migration deyiladi.
Masalan, bazaga kiritilgan o‘zgarish xatolik keltirib chiqarsa yozib qo‘yilgan
migrationlarni qarab, qaysi o‘zgarish xatolik chiqargan bo‘lsa, o‘sha o‘zgarishdan
oldingi migrationga qaytarib qo‘yish mumkin.
Djangodagi bu ikki command boshda ko‘pchilikka tushunarsiz bo‘ladi:
makemigrations – bazaning hozirgi shakli va o‘zgartirish rejalashtirilgan
shaklini taqqoslab, farqlarni aniqlaydi, hozirgi ma’lumotlar yangi strukturaga mos
42
kelishini tekshiradi va o‘zgarishlarni ko‘rsatadigan migration fayl yozadi.
migrate – tayyor bo‘lgan migration fayldagi o‘zgarishlarni ma’lumotlar bazasida
qo‘llaydi.
43
Static Files Requests viewga yetib borgach, u yerda qayta ishlanadi va view response
yuboradi.
Lekin u response tarkibida faqat HTML kod bor, sababi templatening o'zida
HTML kodlar bor. JS yoki CSS kodlari esa templatega faqat chaqirilgan, lekin
templatening ichida emas. Demak, view yuborgan responseda hali CSS va JS qismlari
yo‘q.