"""باطل‌کردنِ کشِ لیستِ پلن‌ها با هر تغییرِ Plan (از ادمین).""" from django.core.cache import cache from django.db.models.signals import post_delete, post_save from django.dispatch import receiver from .models import Plan PLANS_CACHE_KEY = 'subscription:plans:v1' # هم‌تراز با subscription/views.py @receiver(post_save, sender=Plan, dispatch_uid='subscription_invalidate_plans_cache_on_save') @receiver(post_delete, sender=Plan, dispatch_uid='subscription_invalidate_plans_cache_on_delete') def _invalidate_plans_cache(sender, **kwargs): cache.delete(PLANS_CACHE_KEY)