Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- with transaction.atomic():
- guide = ExpUser.objects.select_for_update().get(pk=XXX)
- guide.guide_placement_status = ExpUser.PLACEMENT_STATUS_STOPED
- guide.save(update_fields=['guide_placement_status'])
- # https://pastebin.com/sgnXsRDG
- @receiver(post_save, sender=User)
- def update_experience_visibility_after_guide_placement_status_change(sender, instance, created, **kwargs):
- """
- Обновление видимости экскурсиий гида после смены его статуса размещения
- :param core.models.ExpUser instance: гид
- """
- guide = instance
- if guide.is_changed('guide_placement_status'):
- for exp_id in guide.experiences_created.values_list('pk', flat=True):
- update_guide_exp_visibility(exp_id)
Add Comment
Please, Sign In to add comment