1

Django 管理変更リスト ページで list_filter フィールドをレンダリングするときに使用する raw_id_field スタイル ウィジェットはありますか?

外部キー ベースのフィールドを Django modeladmin list_filter に追加すると、Django は関連するテーブルのすべての行を選択ボックスの右側のパネルにレンダリングします。そのテーブルが大きい場合 (たとえば、User テーブルを指している場合)、Django は何千もの行をレンダリングするように動作するため、ロード時間が劇的に遅くなる傾向があります。レンダリングが終了した後でも、巨大なドロップダウンで選択を見つけるのが難しい場合があります。

4

1 に答える 1

1

ありませんが、Django 1.4ではlist_filterシステムが拡張され、独自のカスタムフィルターを作成できるようになりました。見る

https://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_filter

たとえば、表示されるユーザーの数を制限するのは簡単です。raw_id_fieldsスタイルのフィルターを作成するのは少し難しいでしょう。フィルターテンプレートをオーバーライドするだけで、リンクのリストを表示する代わりに、フォームと送信ボタンを表示する必要があります。

于 2012-06-25T23:46:46.297 に答える