Django 管理员删除所有记录错误请求 [400]

Dan*_*ers 2 python django apache2 django-admin python-3.x

我正在尝试删除 Django Admin 中的多条记录。如果我选择 1000 行的页面并删除,则会收到错误请求 [400] 错误。

错误请求 (400)

单独删除行是有效的。

这仅发生在生产中。我犹豫是否将调试设置为 True。

我试图删除的模型对象:

class Case(models.Model):
    caseId = models.AutoField(primary_key=True)
    dataCheckContactId = models.ForeignKey(DataCheckContact, on_delete=models.DO_NOTHING , related_name="dchk")
    caseDteProg = models.DateTimeField(null=True, blank=True)
    caseIntComplete = models.IntegerField(null = True, blank = True, default = 0)
    caseDteStart = models.DateTimeField(null=True, blank=True)
    caseType = models.CharField(null = True, max_length = 36, blank=True)
    caseInputJSON = models.TextField(null = True, blank=True) # data prior to submission
    caseReturnJSON = models.TextField(null = True, blank=True) #submission data
    caseIntStatus = models.IntegerField(null = True, blank = True, default = 0) 
    caseBPMUuid = models.CharField(null = True, max_length = 36, blank=True)

    def __str__(self):
        return self.caseBPMUuid
Run Code Online (Sandbox Code Playgroud)

将“调试”设置为“真”是查看任何错误消息的唯一方法吗?

谢谢

编辑 1. 使用 Apache2 作为网络服务器。可能的请求大小瓶颈?如果粘贴到文本文件中,每行大约为 20KB。

dir*_*ten 6

Django中有一个关于一次请求(POST和GET)可以提交的参数数量的默认设置,默认设置为1000。

因此,如果您希望能够一次提交超过1000个参数,请更改settings.DATA_UPLOAD_MAX_NUMBER_FIELDS为更高的值。

或者只是避免同时更改这么多行,请使用自定义操作或批量命令来执行此操作。

此外,当发生这种情况时,会引发并记录错误(假设您已正确设置日志记录)。因此,检查服务器上的 Django 日志将使您能够将此视为SuspiciousOperation异常。