ترفندهای برنامه‌نویسی
170 subscribers
27 photos
3 videos
22 files
614 links
Download Telegram
دوستان سلام!

@programming_tricks

اگر توی پروژه جنگویی لازمتون شد مثلا برای هر author تعدادی از پست‌هاش رو واکشی کنید
شاید یک روش ساده و سریع به ذهنتون بیاد که خب روی لیست(کوئری‌ست) نویسنده‌ها یک حلقه میزنیم و از هرکدوم هم تعداد مشخصی از پست‌هاش رو میگیریم و توی یک لیست جدید میریزم!
ولی همچین کاری نکنید!
این کار شما باعث میشه جنگو به ازای هر نویسنده یکبار دیتابیس رو کوئری بزنه و اون تعداد پست رو براش واکشی کنه
فکر میکنم اسم چنین مشکلی
n+1 queries problem
هست که خب مشخصه وقتی تعداد نویسنده‌ها زیاد باشه چه بلایی سر پرفورمنس میاد.
اینجا یک روش دیگه رو نوشتم که خیلی بهینه‌تر هست و فقط یک کوئری میزنه برای همه نویسنده‌ها و همون تعداد پست برای هرکدومشون رو هم جدا میکنه
حتی میتونید بازم با روشهایی مثل values_list همینم مختصرترش کنید و کیفیت بهتری بدست بیارید.(بسته به شرایط اگر لازم شد)

https://lnkd.in/eTus5H5n
Python for Business Analytics (Part 1) Cheat Sheet by ocivv - Download free from Cheatography
https://cheatography.com/ocivv/cheat-sheets/python-for-business-analytics-part-1/