如何在 get_queryset() 中 return 一个 json?

How to return a json in get_queryset()?

如果发生错误,我想 return 来自 get_queryset() 的 JSON 格式的错误消息。有谁知道怎么做呢?

    def get_queryset(self):
        try:
            #some code that returns a queryset
        except:
            return Response({"status": "ERROR!"})

但显然我做不到。 有谁知道如何解决这个问题?

一种可能的方法是以某种方式将消息转换为查询集并 return 它。但是我不知道怎么做!

我想如果你想 return Response get_queryset() 方法在基于 class 的视图中。顾名思义,该方法本身只能 return 一个 QuerySet,尽管在视图中您可以引发某些异常,这些异常会变成 Django's built-in exception handling.

的响应

你可以,例如。引发 Http404 并且 Django 将自动响应 404 响应状态。

您可以 customize 这种行为,例如。 return 一个 JsonResponse 而不是正常的响应。