1
Django Adminで数値入力用のフィルタを作成する方法は?Django Admin:数値フィールドフィルタ
P.S.この似たような質問しか見つかりませんでしたが、具体的な範囲でグループ化する方法と2年前の最後の質問活動だけを提案します。
Django Admin: How do I filter on an integer field for a specific range of values
Django Adminで数値入力用のフィルタを作成する方法は?Django Admin:数値フィールドフィルタ
P.S.この似たような質問しか見つかりませんでしたが、具体的な範囲でグループ化する方法と2年前の最後の質問活動だけを提案します。
Django Admin: How do I filter on an integer field for a specific range of values
警告!私の答えに記載されているdjangoのAPIのいくつかの部分は内部的なものとみなされ、将来のdjangoのリリースでは通知なしに変更される可能性があります。
あなたの心に留意して、実際には自分のフィルタを作成するのはかなり簡単です。あなたがする必要がある:
SimpleListFilter
とその内部にいくつかのメソッドを作成します(あなたのフィルタを用いてテンプレートをレンダリングするために)あなたのデフォルトの範囲の値と選択された範囲の値を生成しますSimpleListFilter
サブクラスでtemplate
プロパティを設定します。Djangoはテンプレート3パラメータに渡します:
title
- (あなたのクラスにtitle
プロパティから取得)あなたのフィルタタイトルchoices
- あなたのクラスのchoices
方法によって生成されたdictsのリスト(デフォルトではlookups
メソッドから返されたタプルのリストを変更します)spec
- あなたのクラスインスタンス。この時点から、テンプレートのspec
を使用して、クラスの任意の属性またはメソッドにアクセスできるため、任意のフィルタの作成が可能である必要があります。