問題タブ [django-inheritance]
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のサブクラスから基本クラス属性のデフォルト値を提供する方法は?
シナリオ:
すなわち。base_field が None の場合にのみデフォルト値を提供して、フィクスチャをデータベースにロードできるようにする必要があります。どんな助けでも大歓迎です!(注: BaseClass は抽象ではありません)
python - Djangoの場合-モデルの継承-親モデルの属性をオーバーライドできますか?
私はこれをしたいと思っています:
これは私が使用したいバージョンです(私はどんな提案も受け付けていますが): http ://docs.djangoproject.com/en/dev/topics/db/models/#id7
これはDjangoでサポートされていますか?そうでない場合、同様の結果を達成する方法はありますか?
python - Django モデルの継承の問題で Python 初心者を助ける
何年にもわたる PHP プログラミングを経て、初めての実際の Django プロジェクトに取り組んでいますが、モデルに問題が発生しています。最初に、私はモデル間でコードをコピー アンド ペーストしていることに気付きました。熱心な OO プログラマーとして、他のモデルが継承できる親クラスを作成することにしました。
ここまでは順調ですね。現在、私の他のすべてのモデルは「Common」を拡張し、希望どおりの名前と日付を持っています。ただし、名前を一意にする必要がある「カテゴリ」のクラスがあります。Common から name 属性にアクセスして一意にする比較的簡単な方法があるはずだと思います。ただし、私が使用しようとしたさまざまな方法はすべて失敗しました。例えば:
Django 管理ページで、「レンダリング中に例外が発生しました: 'Category' オブジェクトに属性 'name' がありません」というエラーが吐き出されます。
誰かが私を正しい方向に向けることができますか?
django - django-haystackで、モデルのサブクラスを使用するにはどうすればよいですか?
django-haystack(xapianバックエンドを使用)を取得して、ここでモデルにインデックスを付けて、フィールドname
とdescription
フィールドで検索しようとしています。
フィールドを追加する、Item
のサブクラスがあります。Device
manufacturer
モデルは次のItem
ように定義されます。
django-haystackの私のサブクラスは次のSearchIndex
ようになります。
私はこのテンプレートを次のように設定しましたtemplates/search/indexes/catalog/item_text.txt
:
モデルオブジェクトがのインスタンスである場合にのみ、フィールドにインデックスが付けられるitem_text.txt
ように何を追加しますか?manufacturer
Device
django - 基本クラスでのクエリ後の Django モデル インスタンス タイプの決定
基本クラスのクエリから返された後、Django データベース オブジェクトの「実際の」クラスを特定する方法はありますか?
たとえば、これらのモデルがある場合...
そして、これらのインスタンスを作成します...
のようなクエリを実行すると、 のインスタンスと のインスタンスではなく、Animal.objects.all()
2 つのインスタンスになります。どのインスタンスがどのタイプであるかを判断する方法はありますか?Animal
Person
Dog
参考:私はすでにこれをやろうとしました...
しかし、それはうまくいかないようです。
django - djangoのさまざまなユーザータイプ用に個別の「admin」インターフェース
私は最近、いくつかのレベルのユーザーが関与するプロジェクトを作成しようとしています。
(省略された大まかなスキーマのほんの一例)
- ME(スーパーユーザー)
- クライアント_
- 顧客_
- 調査コレクション
- SurveyUser(s)
- 招待者
- 調査
- 招待者(招待者は調査とユーザーの両方の子です)
- 質問
- 等
- SurveyUser(s)
- クライアント_
私は理想的には:
- www.example.com/client/アクセスするにはクライアントである必要があったクライアントインターフェイスに移動します
- www.example.com/customer/アクセスするには顧客でなければならない顧客インターフェースに移動します
カスタマイズされたDjango管理インターフェースをそれらすべてに使用することはおそらく不可能である(またはそうなるのではないか)ことをすでに確立しました。したがって、私はユーザーのレベルごとに「admin」インターフェースを手動で作成し、それぞれの役割を管理できるようにすることに傾倒しています。異なるユーザータイプとそれぞれに個別のインターフェイスを使用するための最良の方法は何ですか?
http://scottbarnham.com/blog/2008/08/21/extending-the-django-user-model-with-inheritance/で概説されているユーザーを継承する方法が好きです。
しかし、ユーザーごとに異なる「管理」領域をどのように設定するかはわかりません。
関連する副次的な問題として、標準のユーザープロパティと一緒にカスタムプロパティにアクセスする方法と、使用する実際の管理インターフェイスでそれらを編集/保存する方法もわかりません。
クライアントデータベースに対して「クライアント」ユーザーを認証して、クライアントであることを確認する必要がありますが、認証、ユーザー名、パスワードなどを管理するユーザーデータベースに対しても認証する必要があります。
PHPからPython/Djangoに切り替えているので、アドバイスをいただければ幸いです。
ありがとう!
django - djangoテンプレートでマルチレベルのテンプレート継承を行うことは可能ですか?
私は3つのhtmlファイルを持っています:
- base.html
- page.html
- コメント.html
page.htmlでbase.htmlを拡張します。comment.htmlでは、 page.htmlを拡張します。comment.htmlはbase.htmlのブロックを拡張しますか?
python - 単一のDBテーブルを使用したDjangoモデルの継承 - スーパークラスからサブクラスにアクセスする際の問題
DBスキーマの変更を許可せずに、Oracleを使用してDjangoアプリケーションを開発しています。私はすべてThesis
が存在する 1 つのテーブルを持っています。これは、2 つのばらばらなセットに分けることができます:PhdThesis
とBscMscThesis
. Review
また、DBテーブルにリンクし、それがそうであるかどうかを気にしないモデルもThesis
持っているので、クラスとして保持したいと思います。PhdThesis
BscMscThesis
Thesis
abstract = False
私が遭遇した問題は次のとおりです。
PhdThesis.objects.all()
BscMscThesis.objects.all()
意図したとおりに 2 つの互いに素なセットを返します。
Thesis.objects.all()[0].phdthesis
上記の例で None または DoesNotExist を返さないのはなぜですか? そのような振る舞いを得るにはどうすればよいですか?
django - 指定されたフィールドを持つ Django select_related は、複数の 1 対 1 の関係を破ります
複数の OneToOneField リレーションシップで select_related を実行しようとすると、奇妙なエラーが発生します。たとえば、ターゲット フィールドが孫のサブクラスである場合です。何が起こっているのかを理解するのを手伝ってくれる人が欲しいです (または、これが Django のバグであることを確認してください)。
図:
簡単ですよね?ここで、クリーンなデータベースで Django シェルを開きます。
待って、何?そのクエリセットが空なのはなぜですか? 簡単な健全性チェック:
では、select_related 呼び出しが機能しないのはなぜでしょうか? さて、これを見てください:
それで、これは Django のバグですか、それとも私は何かを理解していませんか?
django - Django:関連フィールドを継承してクエリする方法
私はしばらくこれに対する答えを探していました。あるモデルから関連モデルにフィールドを追加し、関連モデル データをクエリするにはどうすればよいですか。
以下に例を示します。1 人の人が多くの仕事を持っています。
上記のコードは機能します。
今、私は別の問題を抱えていると思います。Django Rest Framework を取得して、これらの追加のプロパティをシリアル化します。新しい投稿の時間。
今私ができるようにしたいのは、ジョブをクエリして、関連する個人データを取得し、ジョブに個人フィールドを持たせることです。このようにして、ジョブを照会するときに、job.FirstName を使用できます。基本的に、Job から Person フィールドへのショートカットを作成したいと考えています。これは、Job が Person のフィールドを継承しているようなものです。
これにより予想されるサイトへの影響は、ジョブを残りのリソースの json としてシリアル化するときに、結果に Person フィールド データが含まれることです。
私は .Net C# のバックグラウンドを持っています。Python/Django を使用しているので、これを実現する方法がわかりません。