restframework 你们会把额外逻辑放 view 还是 serializer 还是 model 里?
举个例子,两个 model ,一个 product ,一个 log 。 逻辑是用户添加 product ,成功以后向 log 表添加一条日志。
添加日志这个操作放在哪里比较好?
class Product(models.Model):
...
def save(self, *args, **kwargs):
Log.objects.create(...)
super().save(...)
或者
class ProductSerializer(serializers.ModelSerializer):
...
def save(self, **kwargs):
...
Log.objects.create(...)
或者
class ProductTrain(generics.CreateAPIView):
serializer_class = serializers.ProductSerializer
...
def perform_create(self, serializer):
serializer.save(...)
Log.objects.create(...)
同样,如果用 Django 原生的 form ,也有这个问题。。。求一个好的设计模式?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.