我尝试创建一些集成测试来测试我的 django 项目中的视图。在我看来,我创建了一个带有前缀的 ModelForm
customer_form = CustomerForm(request.POST or None, prefix="customer", instance=customer)
我正在使用 django 客户端在我的集成测试中尝试以下代码。
response = self.client.get(reverse("customer_edit", kwargs={"customer_id":customer_id})
customer_form = response.context["customer_form"]
data = customer_form.data
prefix = cutomer_form.prefix
self.client.post(reverse("customer-edit", kwargs={"customer_id":customer_id}, data, follow=True)
但在我看来,当我检查 customer_form 是否有效时,我发现它不是。customer_form.errors 包含所有必填字段,尽管数据字典包含这些值。在模型表单上设置前缀时,django 会做不同的事情吗?