django进行增删时候都会发出一个信号量
#在apps.py中添加 def ready(self)的方法 class UserOperationConfig(AppConfig): name = ‘user_operation‘ verbose_name = "用户操作管理" def ready(self): import user_operation.signals #新建signals.py from django.db.models.signals import post_save, post_delete from django.dispatch import receiver from rest_framework.authtoken.models import Token from django.contrib.auth import get_user_model from user_operation.models import UserFav @receiver(post_save, sender=UserFav) def create_userfav(sender, instance=None, created=False, **kwargs): if created: goods = instance.goods goods.fav_num += 1 goods.save() @receiver(post_delete, sender=UserFav) def delete_userfav(sender, instance=None, created=False, **kwargs): goods = instance.goods goods.fav_num -= 1 goods.save()
或者在view.py viewsets类中重新加载,不利用前后端分离的规范性
# def perform_create(self, serializer): # instance = serializer.save() # goods = instance.goods # goods.fav_num += 1 # goods.save()
原文:https://www.cnblogs.com/luguochang/p/12258504.html