モデルで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