Advertisement
ur001

Untitled

Dec 26th, 2023 (edited)
990
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.97 KB | None | 0 0
  1. ##################################################################################
  2. # Исправленный вариант 3: чтобы избавиться от замыкания
  3. # использована передача `exp_id` через дефолтное значение аргумента
  4. ##################################################################################          
  5. @receiver(post_save, sender=Guide)
  6. def update_experience_visibility_after_guide_placement_status_change(sender, instance: Guide, created, **kwargs):
  7.     """Обновление видимости экспириенсов гида после смены его статуса размещения"""
  8.     guide = instance
  9.     if guide.is_changed('placement_status'):
  10.         for exp_id in guide.experiences_created.values_list('pk', flat=True):
  11.             transaction.on_commit(
  12.                 lambda exp_id_copy=exp_id: update_guide_exp_visibility.delay(exp_id_copy)
  13.             )
  14.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement