我正在将Django 2.0支持添加到django-pagetree库中。在自动测试过程中,使用内存中的sqlite数据库,我得到了一些错误,如下所示:
File "/home/nnyby/src/django-pagetree/pagetree/tests/test_models.py", line 638, in setUp
'children': [],
File "/home/nnyby/src/django-pagetree/pagetree/models.py", line 586, in add_child_section_from_dict
...
File "/home/nnyby/src/django-pagetree/venv/lib/python3.5/site-packages/django/db/backends/base/base.py", line 239, in _commit
return self.connection.commit()
django.db.utils.IntegrityError: FOREIGN KEY constraint failed在Django 2.0发行说明中注意到了这一点:https://docs.djangoproject.com/en/2.0/releases/2.0/#foreign-key-constraints-are-now-enabled-on-sqlite
根据我不完全理解的描述,这不应该适用于不持久的测试数据库,对吗?在使用Django 2.0时,不会用适当的选项创建sqlite吗?
用于测试的应用程序设置如下:https://github.com/ccnmtl/django-pagetree/blob/master/runtests.py
发布于 2022-06-24 18:16:48
错误的原因很可能是由于模型中缺少匹配的Foreignkey元素,以及您试图保存的元素(使用那个外键进行更新)。确保在您的数据和新的数据中都存在外键约束(值)。
https://stackoverflow.com/questions/47620487
复制相似问题