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 に答える