میدونی توی Django تراکنشها چطور مدیریت میشن و چه وقت باید سراغ atomic رفت؟ ⚡️💾
جنگو برای حفظ یکپارچگی دادهها از سیستم transaction پایگاهداده استفاده میکنه. این مکانیزم باعث میشه مجموعهای از عملیات یا همه با هم انجام بشن یا هیچکدوم. وقتی میخوای چند query رو تضمین کنی که یا کامل موفق بشن یا در صورت خطا همه برگردن، باید از atomic() استفاده کنی.
🌌 @the_code_Verse 🪐
جنگو برای حفظ یکپارچگی دادهها از سیستم transaction پایگاهداده استفاده میکنه. این مکانیزم باعث میشه مجموعهای از عملیات یا همه با هم انجام بشن یا هیچکدوم. وقتی میخوای چند query رو تضمین کنی که یا کامل موفق بشن یا در صورت خطا همه برگردن، باید از atomic() استفاده کنی.
🌌 @the_code_Verse 🪐
❤4
Code Verse
میدونی توی Django تراکنشها چطور مدیریت میشن و چه وقت باید سراغ atomic رفت؟ ⚡️💾 جنگو برای حفظ یکپارچگی دادهها از سیستم transaction پایگاهداده استفاده میکنه. این مکانیزم باعث میشه مجموعهای از عملیات یا همه با هم انجام بشن یا هیچکدوم. وقتی میخوای چند…
transaction_atomic.pdf
368.8 KB
جواب سوال ۷ جنگو
تعداد صفحه: ۴
کلید واژهها:
#answer #django
🌌 @the_code_Verse 🪐
تعداد صفحه: ۴
کلید واژهها:
atomic, transaction, savepoint, commit, begin, durable, using, on_commit, ATOMIC_REQUESTS#answer #django
🌌 @the_code_Verse 🪐
❤3👎1
8. چگونه Method Resolution Order (MRO) در چند ارثبری پیچیده محاسبه میشود؟ یک مثال با ۳ کلاس بده که super() غیرمنتظره عمل کند.
#question #python
🌌 @the_code_Verse 🪐
#question #python
🌌 @the_code_Verse 🪐
❤2👎1
تا حالا برات پیش اومده که توی چندارثبری پایتون، super() رفتارش عجیب بشه؟ 🌀🐍
در پایتون وقتی از چند ارثبری استفاده میکنیم، ترتیب جستجوی متدها با الگوریتمی به اسم MRO (Method Resolution Order) مشخص میشه. این ترتیب همیشه خطی و مشخصه، ولی توی ساختارهای پیچیده ممکنه super() رفتاری غیرمنتظره نشون بده؛ مثلاً وقتی سه کلاس درگیر زنجیره ارثبری هستن و متدی از یکی از اونها به شکل غیرمستقیم صدا زده میشه.
🌌 @the_code_Verse 🪐
در پایتون وقتی از چند ارثبری استفاده میکنیم، ترتیب جستجوی متدها با الگوریتمی به اسم MRO (Method Resolution Order) مشخص میشه. این ترتیب همیشه خطی و مشخصه، ولی توی ساختارهای پیچیده ممکنه super() رفتاری غیرمنتظره نشون بده؛ مثلاً وقتی سه کلاس درگیر زنجیره ارثبری هستن و متدی از یکی از اونها به شکل غیرمستقیم صدا زده میشه.
🌌 @the_code_Verse 🪐
❤1
Code Verse
تا حالا برات پیش اومده که توی چندارثبری پایتون، super() رفتارش عجیب بشه؟ 🌀🐍 در پایتون وقتی از چند ارثبری استفاده میکنیم، ترتیب جستجوی متدها با الگوریتمی به اسم MRO (Method Resolution Order) مشخص میشه. این ترتیب همیشه خطی و مشخصه، ولی توی ساختارهای پیچیده…
MRO.pdf
364.3 KB
جواب سوال ۸ پایتون
تعداد صفحه: ۶
کلید واژهها:
#answer #python
🌌 @the_code_Verse 🪐
تعداد صفحه: ۶
کلید واژهها:
MRO, Method Resolution Order, diamond problem, C3 linearization#answer #python
🌌 @the_code_Verse 🪐
👍1
8. چگونه میتوان از query annotation برای افزودن فیلدهای محاسباتی در QuerySet استفاده کرد؟
#question #django
🌌 @the_code_Verse 🪐
#question #django
🌌 @the_code_Verse 🪐
👎1
تا حالا خواستی توی Django یه فیلد محاسباتی به QuerySet اضافه کنی بدون اینکه توی دیتابیس ذخیره بشه؟ ⚡️
جنگو قابلیتی داره به اسم query annotation که به ما اجازه میده موقع ساخت QuerySet، ستونهای محاسباتی مثل جمع، میانگین یا شرطهای خاص رو به نتایج اضافه کنیم؛ بدون اینکه این فیلدها واقعاً در جدول پایگاهداده وجود داشته باشن. این کار ابزار قدرتمندی برای گزارشگیری و پردازش دادههاست.
🌌 @the_code_Verse 🪐
جنگو قابلیتی داره به اسم query annotation که به ما اجازه میده موقع ساخت QuerySet، ستونهای محاسباتی مثل جمع، میانگین یا شرطهای خاص رو به نتایج اضافه کنیم؛ بدون اینکه این فیلدها واقعاً در جدول پایگاهداده وجود داشته باشن. این کار ابزار قدرتمندی برای گزارشگیری و پردازش دادههاست.
🌌 @the_code_Verse 🪐
👎2❤1
Code Verse
تا حالا خواستی توی Django یه فیلد محاسباتی به QuerySet اضافه کنی بدون اینکه توی دیتابیس ذخیره بشه؟ ⚡️ جنگو قابلیتی داره به اسم query annotation که به ما اجازه میده موقع ساخت QuerySet، ستونهای محاسباتی مثل جمع، میانگین یا شرطهای خاص رو به نتایج اضافه کنیم؛…
query_annotation.pdf
411.6 KB
جواب سوال ۸ جنگو
تعداد صفحه: ۳
کلید واژهها:
#answer #django
🌌 @the_code_Verse 🪐
تعداد صفحه: ۳
کلید واژهها:
query annotation, OuterRef, SubQuery#answer #django
🌌 @the_code_Verse 🪐
👎2
9. یک generator بساز که مقدار بگیرد (send) و وقتی عدد منفی فرستاده شد، exception پرتاب کند و ادامه دهد.
#question #python
🌌 @the_code_Verse 🪐
#question #python
🌌 @the_code_Verse 🪐
❤4👎1
چطور میشه یک generator ساخت که هم مقدار بگیره هم خطا مدیریت کنه؟ 😎
میخوایم یک generator بنویسیم که با send() مقدار دریافت کنه، و وقتی عدد منفی فرستاده شد، یک Exception پرتاب کنه ولی جریان ادامه پیدا کنه. این یعنی generator میتونه همزمان ورودی بگیره و خطاها رو کنترل کنه بدون اینکه متوقف بشه.
🌌 @the_code_Verse 🪐
میخوایم یک generator بنویسیم که با send() مقدار دریافت کنه، و وقتی عدد منفی فرستاده شد، یک Exception پرتاب کنه ولی جریان ادامه پیدا کنه. این یعنی generator میتونه همزمان ورودی بگیره و خطاها رو کنترل کنه بدون اینکه متوقف بشه.
🌌 @the_code_Verse 🪐
❤2👍1👎1
Code Verse
چطور میشه یک generator ساخت که هم مقدار بگیره هم خطا مدیریت کنه؟ 😎 میخوایم یک generator بنویسیم که با send() مقدار دریافت کنه، و وقتی عدد منفی فرستاده شد، یک Exception پرتاب کنه ولی جریان ادامه پیدا کنه. این یعنی generator میتونه همزمان ورودی بگیره و خطاها…
generator.pdf
384.5 KB
جواب سوال ۹ پایتون
تعداد صفحه: ۴
کلید واژهها:
#answer #python
🌌 @the_code_Verse 🪐
تعداد صفحه: ۴
کلید واژهها:
generator, next, send, yield, Ecception#answer #python
🌌 @the_code_Verse 🪐
❤1
9. فرق بین lazy evaluation و eager evaluation در Django QuerySets چیست و چه زمانی مشکل ایجاد میکند؟
#question #django
🌌 @the_code_Verse 🪐
#question #django
🌌 @the_code_Verse 🪐
👎1🔥1
همیشه همهچیز همون لحظه اجرا نمیشه… گاهی «تنبل بودن» بیشتر به کار میاد تا «عجله داشتن» ⏳
تفاوت اصلی بین lazy evaluation و eager evaluation توی QuerySetهای جنگو اینه که QuerySet تا وقتی واقعا نیاز نباشه، اجرا نمیشه (lazy). ولی بعضی متدها باعث میشن همون لحظه کوئری به دیتابیس زده بشه (eager). این تفاوت اگه درست مدیریت نشه، میتونه باعث کوئریهای اضافی یا عملکرد غیرمنتظره بشه.
🌌 @the_code_Verse 🪐
تفاوت اصلی بین lazy evaluation و eager evaluation توی QuerySetهای جنگو اینه که QuerySet تا وقتی واقعا نیاز نباشه، اجرا نمیشه (lazy). ولی بعضی متدها باعث میشن همون لحظه کوئری به دیتابیس زده بشه (eager). این تفاوت اگه درست مدیریت نشه، میتونه باعث کوئریهای اضافی یا عملکرد غیرمنتظره بشه.
🌌 @the_code_Verse 🪐
❤1👎1👏1