我的ArrayModelField
模型上有一个Document
,但是当我尝试将值保存在Admin
上时,它返回了一个['ManagementForm data is missing or has been tampered with']
错误。我一直在搜索该错误,并且仅在使用formsets
时显示,但这里我什至没有使用formsets
。我认为files
同时具有model_container
和model_form_class
的语法是正确的。 DocumentForm
类只是具有字段__all__
的普通表单类,因此files
字段已包含在内。我想念什么吗?还是应该重写我的DocumentForm
代码并改用formsets
?
class Document(TimestampedModel):
files = models.ArrayModelField(
model_container=DocumentFile,
model_form_class=DocumentFileForm,
default=[],
blank=True,
null=True,
)
class Meta:
abstract = True
class DocumentFile(TimestampedModel):
filename = models.CharField(max_length=250)
file = models.FileField(
_('File'),
null=True,
blank=True,
default=None
)