問題タブ [django-admin]
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.
python - Django ModelAdminの「list_display」はForeignKeyフィールドの属性を表示できますか?
へPerson
の外部キー関係を持つモデルがありますBook
。これには多くのフィールドがありますが、最も心配しているのはauthor
(標準の CharField) です。
そうは言っても、私のモデルでは、次を使用PersonAdmin
して表示したいと思います。book.author
list_display
そうするための明白な方法をすべて試しましたが、何もうまくいかないようです。
助言がありますか?
python - Django Admin でフィルターを保持する
私が達成したいことは次のとおりです。
- 管理サイトに移動し、オブジェクトのリストにいくつかのフィルターを適用します
- クリックしてオブジェクトを編集、編集、編集、[保存] をクリックします。
- サイトにオブジェクトのリストが表示されます... フィルタリングされていません。ステップ 1 のフィルターを記憶して適用したいと思います。
それを行う簡単な方法はありますか?
python - Django 管理インターフェイスで、アイテムを複製する方法はありますか?
管理インターフェースで既存のリストを複製する機能を追加する簡単な方法があるかどうか疑問に思っていますか?
データ入力では、多くのアイテムが別のアイテムと一般的なデータを共有している状況に遭遇しました。時間を節約するために、既存のリストをすばやく複製し、変更されたデータのみを変更すると非常に便利です。より良いモデル構造を使用することは、データの重複を減らす方法の 1 つですが、将来、重複したデータを個別に変更する必要が生じる場合があります。
python - Django 管理インターフェースのインライン配置
フィールドセット内の 2 つの異なるフィールドの間にインラインを配置できるようにしたいと考えています。これはすでに外部キーで実行できます。必要なクラスをインライン化し、追加のフォームを取得するように定義するとうまくいくと思いましたが、どうやら
「クラスx」には「クラスy」へのForeignKeyがありませんという
エラーが発生します。これは Django 1.0 でサポートされているものではありませんか? もしそうなら、既存の解決策がない場合、どうすれば問題を解決できますか?
models.py で
admin.py で
python - 複数テーブルのサブクラス化されたモデルの管理汎用インラインが壊れています --- 代替手段はありますか?
これが私がやろうとしていることであり、失敗しています...
他のオブジェクトとの一般的な関係を持つファイル モデルがあります。
また、ダウンロードではなくページ内に表示される画像の特定のケースに対処するために、ファイルのサブクラスが必要です。
File モデルのジェネリック インラインを含め、上記のすべてが正常に機能しますが、Image モデルのジェネリック インラインを使用するまでは --- 保存プロセスが基本クラス インスタンスの作成に失敗し、Image が.file_ptr (基本クラスへの「秘密の」外部キー) を None にすることはできません。
したがって、基本的に、一般的なインラインは現時点で複数テーブルの継承を適切にサポートしていません。
これを必要以上に複雑にしている可能性が非常に高いので、誰かがこの問題の修正、または同じ目的を達成するためのより良い方法を提案できますか?
さらに説明が必要な場合はお知らせください。
python - Django 管理インターフェイスはサブクラスの __unicode__() を使用しません
(ジャンゴ 1.x、パイソン 2.6.x)
私は次のようなモデルを持っています:
これは仮想クラスであるはずなので、Animals をインスタンス化していません。私は Cats と Dogs をインスタンス化しましたが、AnimalHome の管理ページでは、動物の選択は、2 つのサブクラスに対して定義した __unicode__ ではなく、"Animal オブジェクト" (デフォルトの __unicode__() だと思います) として表示されます。ヘルプ。
抽象基本クラスの問題は、この質問に対する赤いニシンだと思います。Animal が抽象化されていなかったとしても、何らかの理由で、ForeignKey が Animal で定義されており、そのサブクラスの 1 つではなく、サブクラスの代わりにスーパークラス メソッドが呼び出されているという問題があります。OO プログラミングで object.method() を呼び出すと、最下位のサブクラスの実装を取得することになり、スーパークラスの実装を取得するには追加の作業を行う必要があります。では、サブクラスで __unicode__ を定義するだけでは十分ではないのはなぜですか --- 実際、問題は __unicode__ がまったく呼び出されないことかもしれません。だから多分アニマルに __unicode__ を定義してサブクラスを呼び出させると
わかりました、ORM の問題は理解できたと思います。これらの答えは両方とも、これを理解するのに役立ちました、ありがとう。これを試しているうちに、Django がサブクラス化されたモデルを保存するときに、(1) サブクラス化されたオブジェクトの行をスーパークラスのテーブルに作成し、(2) サブクラス テーブルの PK をスーパークラス テーブルで割り当てられた PK。サブクラス テーブル内のこの PK は、superclass_ptr という名前です。これに基づいて、私は以下を作成しました。フィードバックをいただければ幸いです。
ローレンスは、この質問に関して最も適切であるようです。Cat と Dog はばらばらの PK セットを持ちます (そして、Animal のサブクラスはスーパークラスのレコードと同じ PK を持ちます) が、残念ながら Django は舞台裏で何も実行しません。動物には犬と猫のサブクラスがあります。具体的には、私は動物番号 3 で、さらに確認したところ、猫番号 3 もあります。つまり、私は実際には猫番号 3 です」. Python のイントロスペクションを使用すると、これは完全に可能であり、非常に合理的であるように見えますが (猫は動物自身ができないことは何もしないため)。皆さん、ありがとうございました。
django - Django外部キー読み取り専用
私には2つのモデルがあり、1つは従業員で、もう1つは資産であり、資産と従業員の間には多対1の関係があります。また、アセットはStackedInlineフィールドとして従業員管理インターフェイスに追加されます。とにかく、アセットを従業員管理の読み取り専用フィールドにすることはできますか。
私の意図は、従業員が誤って削除しないように、従業員が現在管理者に保持しているすべての資産を表示することでした。
python - Django 管理者の「view on site」は、私のドメインではなく example.com を指しています
get_absolute_url
モデルの 1 つに関数を追加しました。
管理サイトはそれを取得し、そのオブジェクトの詳細ページに「サイトで表示」リンクを追加します (「/foo/bar」の代わりに実際の URL をそこに置いた場合)。
問題は に行くのではなくhttp://localhost:8000/foo/bar
、 に行くことhttp://example.com/foo/bar
です。
私は何を間違っていますか?
python - Django Admin アプリケーションでフィールド ラベルを変更できますか?
タイトルが示すように。管理アプリケーションで単一のフィールドのラベルを変更できるようにしたいと考えています。Form.field 属性は知っていますが、Model または ModelAdmin にその情報を渡すにはどうすればよいですか?
django - admin.ModelAdminオブジェクトの注文
トッピングクラスとピザクラスを備えたピザアプリケーションがあり、DjangoAdminに次のように表示されているとします。
しかし、私はそれらをこのようにしたいと思います:
admin.pyでそれを構成するにはどうすればよいですか?