13

我在我的模型中使用 django 的ContentType外键,并且我在装置测试中使用它。

因此,我必须在我的夹具中硬编码content_type_id,但 django 有时会将其初始化为不同的值,因此我的测试失败。

那么有没有办法安全地预测模型的content_type_id或任何其他适当的方法来处理这种情况?

4

1 回答 1

20

使用自然键:https ://docs.djangoproject.com/en/dev/topics/serialization/#natural-keys

大多数文档都涉及如何将功能添加到您自己的模型中,但ContentType已经支持它们,因此只需添加--natural-foreign到您的dumpdata管理命令中:

$ python manage.py dumpdata myapp --indent=4 --natural-foreign
于 2011-11-08T15:08:31.193 回答