問題タブ [django-modeladmin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 集計を表示する Django 管理インターフェース
django 管理インターフェイスを使用して、モデル内のデータの集計を表示したいと考えています。例: モデルには次のフィールド [従業員名、給与、月] があります。フィールド [月、総給与支払額、累積月間給与支払額] を持つ集計テーブルが必要です。どうすればいいですか?? 私はインターネットを検索しましたが、それを行う方法が見つかりませんでした..参照やガイダンスが役立ちます
django - Django:オブジェクトに応じた条件付きModelAdmin
たとえば、次のような基本クラスがあるとします。
ここで、いくつかのタイプのオブジェクトをテーブルに入力しています。その中には、データの一部を使用するものもあれば、他の部分を使用するものもあり、すべて共通の部分 (この例では名前) を使用しています。
完全なリストが必要ですが、オブジェクトをクリックしたときに、そのタイプに応じて異なるビューが必要です。modelAdmin の変更には、次のようなものがあります。クラスの 1 つはインラインを使用し、他のクラスは使用しない、list_display が異なる、追加の CSS があるなど。基本的に、異なる modelAdmin について話しています。
私が考えている代替案: 1 つは、これらの型のそれぞれが Base をサブクラス化することです。
次に、それぞれに modelAdmin を定義し、Base クラスに 1 つ定義して、すべてを一覧表示するテーブルを取得します。この例では、/app/base/id ではなく、タイプに応じて /app/type1/id、/app/type2/id などに移動するようにリンクをオーバーライドします。これらのそれぞれについて、modelAdmins を変更して、保存後に /app/type に戻るようにします
別の代替手段は、単一のモデルと単一の modelAdmin を持ち、change_view に使用しているすべてのメソッドをオーバーライドして、レンダリングしているオブジェクトのタイプ、つまり get_inline_instances、get_formsets など、list_display、list_display_links、list_filter を変更する必要があるものをすべてオーバーライドすることです。など
最初の選択肢は私にはずっときれいに見えますが、modelAdmin でメソッドを定義する以外にリンクを変更する方法がわかりません。
私が見逃している簡単な方法はありますか?どのようにしますか?
ああ、それは管理者を使用する必要があります。ビューまたは別のモデルを使用してこれを行いたいのですが、残念ながらこれがそうあるべきです。最高司令部は、すべてを 1 つのテーブルにまとめたいと考えています。
ありがとう!。
編集:また、私はこれを見つけたばかりで、良さそうです:
http://django-polymorphic.readthedocs.org/en/latest/admin.html
django - tabularinline ブロックの各行に行番号を追加する方法
タイプ TabularInline のインラインを持つ ModelAdmin クラスがあります。私が望むのは、TabularInline の各行の左側に行番号が表示されるようにすることです。この数は、新しいレコードがインラインに追加されると増加し、フォームが編集されているときに表示されます。
行番号は、インライン データのモデルの一部ではなく、インライン ブロックによって新しいレコードが追加または表示されるたびに生成されることを好みます。この番号をデータベースに保持する必要はありません。これは、ModelAdmin クラスの別のフィールドでの参照のみを目的としています。
私はdjangoが初めてで、これを実現する方法がわかりません。
任意の提案をいただければ幸いです。
よろしく、リック
python - Django formfield_for_foreignkey
ドキュメントに従って、外部キー フィールドで管理者の選択をフィルタリングしようとしています。
私のモデルはとてもシンプルです:
それを達成するには、次のようなことをする必要があります:
それは機能していますが、ページにアクセスするたびに関数を3回実行しているため、合計5回のクエリが発生します(3回とデフォルトで2回)。同じ db_field を 3 回渡しています。
それを1つのクエリだけに減らすにはどうすればよいですか? これは意図した動作ですか? もしそうなら...なぜですか?
python - ModelForm save() メソッドをテストしてモデルの変更を保存する方法は?
AdminModel
の管理者変更フォームからフィールドを食べたり保存したりModelForm
できるように、 をオーバーライドしました。User
Person
しかし、私は save() メソッドをチェックするテストを書くのに苦労しています:
更新テスト
ソリューションを更新します。リクエストされた非表示フィールド「ユーザー」を埋めていなかったことが判明しました。除外により、フォームが有効になり、テストに合格しました。
admin.py
tests.py