فارسی
باز کردن در Telegram

پست#Devocook

1 ژوئن 2026
D
Devobin
عکس
برای نمایش کلیک کنید
#Devocook ⚛️ Atomic Operations در جنگو: وقتی `save()` نجات نمی‌دهد 🧠 قسمت 1: مشکل کجاست؟ با view_count = 10 و دو کاربر همزمان: product = Product.objects.get(id=1) product.view_count += 1 product.save() نتیجه: 11 (باید 12 باشد). Race Condition در محیط همزمان حتمی است. ⚛️ قسمت 2: راه حل اتمیک استفاده از F expressions: from django.db.models import F Product.objects.filter(id=1).update(view_count=F('view_count') + 1) این کار اتمیک و بدون تداخل است. 🧩 قسمت 3: مثال‌ها # افزایش موجودی Product.objects.filter(id=1).update(stock=F('stock') + 5) # انتقال موجودی Order.objects.filter(id=1).update(total_price=F('sub_total') + F('tax')) # شرط مقایسه Product.objects.filter(stock__gt=F('min_threshold')) ⚠️ قسمت 4: تله مهم – ترکیب با `save()` # ❌ اشتباه product.view_count = F('view_count') + 1 product.save() # F آبجکت ذخیره می‌شود، نه مقدار ✅ راه درست: product.view_count = F('view_count') + 1 product.save(update_fields=['view_count']) product.refresh_from_db() ❤️ @devobin
5 · 627 ·

در همان حوالی فید

این پیام
DDevobin#cookovid اموزش متن بالا به صورت ویدیو و توضیح متد F() in djangoDDevobin#devocook 📍 کجا از میکروسرویس با Django استفاده کنیم؟ ✅ پروژه خیلی بزرگ شده و چند تیم روی آن کار می‌کنند ✅ نیاز به دیپلوی و مقیاس‌دهی مستقل هر بخش دارید (مثل سر
DDevobinDevobin@devobin · کانال · فناوری
46مشترک30پست در ایندکس
فید انجمن باز کردن در Telegram

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما