如何从ListCreateAPIView通用视图中记录异常

时间:2018-06-18 10:50:56

标签: django logging django-rest-framework

这是我的通用视图,我想记录对此视图发出无效发布请求时发生的异常。

from rest_framework.generics import (ListCreateAPIView)
class ProjectListCreateAPIView(ListCreateAPIView):
    queryset = Project.objects.all()
    serializer_class = ProjectSerializer

1 个答案:

答案 0 :(得分:1)

你的问题非常通用,所以这里有3个通用答案(选择一个更合适的答案):

  1. 您可以覆盖DRF异常处理程序并在其中记录错误docs
  2. 序列化程序类中的
  3. 编写自定义validate docsvalidate_<field> docs并记录每个字段的错误
  4. 在您的视图集中覆盖create / perform_create方法并且日志错误ListCreateAPIView基于CreateModelMixin,它提供了创建新对象的方法,您需要覆盖这些方法和处理那里的错误
  5. 编写自定义django中间件(这是一个低级别的解决方案)docs