1

raw_id_fields を使用する管理クラスがあります。__unicode__数値キーを表示する代わりに、それを対応する外部キー オブジェクトのに変換したいと思います。

これを行う方法は、管理クラスにフォームを追加することだと思いました。このフォームは、変更したいフィールドが独自のウィジェットでオーバーライドされたものになります。

中間ステップとして、既存の動作を複製したいだけなので、未加工の ID フィールドが隣接するアイコンとともに表示されます。のウィジェットを含むフォームがありますForeignKeyRawIdWidget。このウィジェットには引数が必要ですが、何を指定すればよいかわかりません。ForeignKeyRawIdWidget(DBObjectName.objects.get(pk=53))たとえば、試してみましたが、DBObjectName object has no attribute 'to' というエラーが表示されます。

related.py の定義から、ウィジェットには to 引数が必要であることがわかりますが、何を探しているのかわかりません。

4

1 に答える 1

0

の形式で引数を探していますClass._meta.get_field('field to link').rel

たとえば、別のクラスの画像フィールドが ForeignKey である Photo というクラスがあり、ForeignKey のウィジェットを異なって表示したいとします。rel に対して ForeignKeyRawIDWidget が必要とする引数は ですPhoto._meta.get_field('image').rel

于 2009-06-15T21:29:38.800 に答える