在以下单元测试中(使用factory_boy测试装置),
class PackageDefaultTest(TestCase):
def test_1(self):
company = CompanyFactory()
package = PackageFactory(company=company)
form = PackageForm(instance=package)
import ipdb; ipdb.set_trace()
在进入调试器后,我遇到了以下奇怪的情况:
> /Users/kurtpeek/Documents/Dev/lucy/lucy-web/dashboard/tests/test_packages.py(601)test_1()
599 package = PackageFactory(company=company)
600 form = PackageForm(instance=package)
--> 601 import ipdb; ipdb.set_trace()
ipdb> form.is_valid()
False
ipdb> form.errors
{}
也就是说,form.is_valid()
是False
,但form.errors
是一个空字典。有人能解释一下这是怎么回事吗?根据我对https://docs.djangoproject.com/en/2.0/ref/forms/api/#using-forms-to-validate-data的理解,没有错误意味着有效的表格。