我在我的模型中使用 django 的ContentType外键,并且我在装置测试中使用它。
因此,我必须在我的夹具中硬编码content_type_id,但 django 有时会将其初始化为不同的值,因此我的测试失败。
那么有没有办法安全地预测模型的content_type_id或任何其他适当的方法来处理这种情况?
我在我的模型中使用 django 的ContentType外键,并且我在装置测试中使用它。
因此,我必须在我的夹具中硬编码content_type_id,但 django 有时会将其初始化为不同的值,因此我的测试失败。
那么有没有办法安全地预测模型的content_type_id或任何其他适当的方法来处理这种情况?
使用自然键:https ://docs.djangoproject.com/en/dev/topics/serialization/#natural-keys
大多数文档都涉及如何将功能添加到您自己的模型中,但ContentType
已经支持它们,因此只需添加--natural-foreign
到您的dumpdata
管理命令中:
$ python manage.py dumpdata myapp --indent=4 --natural-foreign