【问题标题】:Is there any way to stop the logs being stored in database using drf-api-tracking in django?有什么方法可以停止使用 django 中的 drf-api-tracking 将日志存储在数据库中?
【发布时间】:2021-06-11 11:49:17
【问题描述】:

我使用 Django 创建了一个小项目,为了检查数据库中的日志,我从 Django 安装了 drf-api-tracking 库。我已将 LoggingMixin 参数传递到 Django 中的 views.py 文件中的所有类中。 我可以查看数据库中的日志。如果我不想在 db 中写入这些日志,有没有办法阻止它,而不是卸载和删除参数。

【问题讨论】:

    标签: django rest django-models django-rest-framework django-views


    【解决方案1】:

    覆盖 should_log 方法并根据您的需要进行自定义。

    例如

    class MyLoggingView(LoggingMixin, APIView):
        def should_log(self, request, response):
            """
            Log only if response contains 'log'
            """
            return 'log' in response.data
    

    或者在你的情况下

    class UserViewSet(LoggingMixin, APIView):
        
        def should_log(self, request, response):
            return False
        
        def get(self,request, format=None):
            data=App.objects.all()
            serializer=AppSerializer(data,many=True)
            return Response(serializer.data)
    

    【讨论】:

    • 我怎样才能继续这个,我已经将 LoggingMixin 添加到类中,接下来可以做什么? class UserViewSet(APIView): def get(self,request, format=None): data=App.objects.all() serializer=AppSerializer(data,many=True) return Response(serializer.data)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    相关资源
    最近更新 更多