Django HttpResponseBadReques中没有内容

2024-10-01 17:38:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图组织django应用程序返回的错误消息,但HttpResponseBadRequest对象的子类具有空内容时遇到问题:

在视图.py公司名称:

class HttpNoContentAvailable(django.http.HttpResponseBadRequest):
    content = "Must add content before making this request."

def get_content(request, project_id):
    project = Project.objects.get(pk=project_id)
    if not project.has_content():
        return HttpNoContentAvailable()
    ...

其工作原理如下:

^{pr2}$

在我的应用程序中,有许多视图需要返回相同的400响应,这取决于是否有内容,我希望将响应内容存储在一个位置。为了让问题变得更“有趣”,我在开发服务器上运行的单元测试通过了——我得到了包含正确内容的HTTP400响应,但是在生产环境中运行时,我得到的是没有内容的HTTP400响应。在

如何使http400响应具有正确的内容?(或者,更一般地说,您建议我如何组织代码来实现只存储一次响应内容的目标?)在


Tags: 对象djangoproject视图id应用程序消息内容
1条回答
网友
1楼 · 发布于 2024-10-01 17:38:58

您应该重写子类中的构造函数,而不是将内容定义为类变量。在

例如:

 def __init__(self):
         super(django.http.HttpResponseBadRequest, self).__init__("Must add content before making this request.")

相关问题 更多 >

    热门问题