Forwarded from ѕнυĸυralι
#savol
Bu elonlarni 1-page va bunaqa page larda 100 talab bor .
Har bir page da 2 ta top bulishi mumkin va ular har zapros kelganda random bulib qayta paginate qilinadi.
qolgan simple elonlar created_at va advertised_at buyicha order_by qilinadi.
2 ta top elonni chiqadigan joyi belgilanmagan ya'ni hohlagan joyda chiiqshi kumkin shu 6 talikni.
savol shuku shu 2 ta top elonni chiqishi mumkin bugan joyi ixtiyoriy bulgani uchun qanday logika ishlatishim mumkin .
#qushimcha
misol uchun top elonlar jami 20 ta bulsa agar 1- page da ular ni 1-2 -si chiqsa va bir refresh bugandan keyin qaytib yana shu toplar chiqmasligi kete
Bu elonlarni 1-page va bunaqa page larda 100 talab bor .
Har bir page da 2 ta top bulishi mumkin va ular har zapros kelganda random bulib qayta paginate qilinadi.
qolgan simple elonlar created_at va advertised_at buyicha order_by qilinadi.
2 ta top elonni chiqadigan joyi belgilanmagan ya'ni hohlagan joyda chiiqshi kumkin shu 6 talikni.
savol shuku shu 2 ta top elonni chiqishi mumkin bugan joyi ixtiyoriy bulgani uchun qanday logika ishlatishim mumkin .
#qushimcha
misol uchun top elonlar jami 20 ta bulsa agar 1- page da ular ni 1-2 -si chiqsa va bir refresh bugandan keyin qaytib yana shu toplar chiqmasligi kete
#savol
prefetch_related nima vazifani bajaradi django ORM da
#javob
querysetga qo'shib unga related bo'lgan obyektlarni olish uchun kerak, siz querysetdagi biror obyekt orqali unga ulangan obyektlarni olishga uringanizda django bazaga yana bir martta zapros beradi, prefetch qilsez 1 ta querysetni o'zida join qilib oladi, optimizatsiya qilish maqsad
example:
1.
❌ not optimized
2.
✅ optimized
prefetch_related nima vazifani bajaradi django ORM da
#javob
querysetga qo'shib unga related bo'lgan obyektlarni olish uchun kerak, siz querysetdagi biror obyekt orqali unga ulangan obyektlarni olishga uringanizda django bazaga yana bir martta zapros beradi, prefetch qilsez 1 ta querysetni o'zida join qilib oladi, optimizatsiya qilish maqsad
example:
1.
users = User.objects.all()
f_user = users.first()
u_comments = f_user.comments.all()
# bu qatorda userni kommentlarini olish uchun bazaga yana bitta connection bo'ladi❌ not optimized
2.
users = User.objects.prefetch_related('comments').all()
f_user = users.first()
u_comments = f_user.comments.all()
# bu holatda queryda kommentlar har bir user bn birga keladi✅ optimized
👍4
#savol
Access tokenni yaroqlilik muddatini 2 3 yil qilsam ham boladimi. 😢
javob:
haa bo'ladi, lekin bu holatda havfsizlikni o'ylamasangiz ham bo'ladi chunki agar hujum qilishmoqchi bo'lsa 1 2 kunda dasturizni qo'lga olishi mumkin. token dan foydalanmasangiz ham bo'ladi😁 agar 2 3 yil qilmoqchi bo'lsangiz chunki foydasi tegmaydi baribir.
Access tokenni yaroqlilik muddatini 2 3 yil qilsam ham boladimi. 😢
javob:
haa bo'ladi, lekin bu holatda havfsizlikni o'ylamasangiz ham bo'ladi chunki agar hujum qilishmoqchi bo'lsa 1 2 kunda dasturizni qo'lga olishi mumkin. token dan foydalanmasangiz ham bo'ladi😁 agar 2 3 yil qilmoqchi bo'lsangiz chunki foydasi tegmaydi baribir.