TGViewer
Microfrontend.ir Microfrontend.ir @microfrontend_ir · 1.35K subscribers
Post #119 795
Microfrontend.ir پیاده سازی Django Soft Delete چندی پیش خبری منتشر شد که در توییتر حذف داده‌ها به درستی انجام نمی‌شود. واقعیت این است که در اغلب نرم‌افزارهای مدرن داده‌ها به صورت فیزیکی حذف نمی‌شوند و صرفا برچسپ حذف شده می‌گیرند. در این ویدیو با هدف آشنایی بیشتر با مدل‌های…
یکی از دوستان کامنت بسیار مهمی تو یوتیوب نوشته بودند و دیدم خالی از لطف نیست اینجا هم پست کنم.

سوال :
Vessal Daneshvar
برای فیلد های یونیک هم میشه راهنمایی بکنید که soft delete چجوی باشه بهتره ، معمولا یه مقدار پیچیدگی ایجاد میشه موقع پیاده سازی کردن مواردی که باید یونیک باشن و حذف شده اند و مجدد میخوان ایجاد بشن

جواب:
میدونید که یونیک در واقع یک کانستراینت و ایندکس سمت دیتابیسه. یکی از ویژگی های بسیار مهم و جذابی که ارایه میده تعریف conditional constraint که مثلا تو سناریو این ویدیو میتونید بگید ایندکس یونیک صرفا رو مواردی که is_deleted فالس هست اعمال شوند. مثلا به این صورت
UniqueConstraint(fields=['user'], condition=Q(status='DRAFT'), name='unique_draft_user')
جزییات کاملتر تو داکیومنتیشن اینجاست.
https://docs.djangoproject.com/en/4.1/ref/models/constraints/#condition


پی نوشت: از منظر مدیریت ایندکس و کانستراینت‌ها به جرات میتونم بگم جنگو یه سر و گردن از سایر ORM ها مثل لاراول بالاتره.البته دلیلش خود جنگو یا لاراول نیست. دلیلش فرهنگ حاکم بر کامیونیتشونه. تو کامیونیتی php انتخاب اول دیتابیس عموما MySQL و مشتقاتشه اما تو پایتون معمولا انتخاب اول PostgreSQL هستش و نکته اینجاست که مای اس کیو برای ایندکس تمرکزش بر ایندکس های مبتنی بر درخته و خیلی خوب این کارو میکنه. تو پستگرس علاوه بر ایندکس های مبتنی بر درخت، طیف گسترده ای از ایندکس ها شامل expression و partial رو ساپورت میکنه
  • 👍 8
  • 🔥 4
More from @microfrontend_ir
  1. Aug 10, 2026photo post
  2. Aug 10, 2026Post #363
  3. Aug 10, 2026قبلنا خیلی با قیاس مغز و سی پی یو مشکل داشتم و برداشتم این بود که اساسا قیاس درستی نیست. م…
  4. Aug 6, 2026اگر احیانا داشتید از مکتب خونه می‌دیدید از اونجا حذف شده و میتونید از درس افزار شریف ببینی…
  5. Aug 2, 2026اخیرا از این دوره مکتب خونه واقعا لذت بردم https://maktabkhooneh.org/course/خلاقیت-نوآوری-…
  6. Jun 8, 2026تازه شروعش کردم ولی به نظر باحال میاد Your Code as a Crime Scene, Second Edition Use Foren…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →