11
"User"オブジェクト(デフォルトのDjangoのauthオブジェクト)のフィクスチャを持っていて、 "Profile"オブジェクトのフィクスチャを作成しようとしています。各プロファイルは、ユーザーオブジェクトと一対一の関係を持ち、そのユーザーのためにさらにカスタムのものを定義します。Django - Fixturesの外部キー
私が知る限り、フィクスチャで外部キーを扱う通常の方法は、外部オブジェクトの主キーをフィクスチャにハードコードすることです。それを避ける方法はありますか?
基本的に、私は "user":pk 'ではなく "user":username "のようなものを持つようにしています。
これを行う方法はありますか?
を探している - これまでのところ、私が言うことができるように、auth.userモデルがデフォルトで定義された任意のunique_togetherを持っている、と私はありませんそのファイルを変更せずにナチュラルキーを使用することはできません。私は、フィクスチャ内のそれぞれのプライマリ・キー値でハードコーディングして欲しいものを達成することができますが、それは厄介なようです。何か不足していますか? – numegil
さて、ユニークなTogetherは_問題ありません。問題は、Naturalキーがモデルに定義されていないことです。これはバグのようです。 はい、PKをハードコーディングすることは今のところうまくいきます。申し訳ありませんが、自分の目標を少し誤解して、自分のモデルで作業しているかのように読んでいます。 –
Btw、Django UserManagerはユーザ名の自然キーを定義するようになりました(1.10のようになりましたが、おそらく遠くに戻るでしょう)。 – Eloff