問題タブ [multi-table-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.

0 投票する
4 に答える
3169 参照

django - マルチテーブル継承を使用した親クラスのDjangopost_saveシグナル

Djangoでは、マルチテーブル継承を使用するモデルがあり、親クラスでpost_saveシグナルのレシーバーを定義した場合、子クラスのインスタンスが保存されたときにそのレシーバー関数が呼び出されますか?

別の質問から例を借りる:

私が行った場合:

echo_categoryレシーバー関数は呼び出されますか?

0 投票する
1 に答える
323 参照

ruby-on-rails - Rails - Citier - 2 レベルの継承、子クラスは中間クラスの属性を継承しません

私は次のような構造を実装しようとしています: 祖父 <- 父 <- 息子 Rails と gem citier を使用します。この例では、3 つのクラスを表す 2 つのテーブルを作成する必要があります。1 つはルート クラス (GrandFather) とその属性用、もう 1 つは父と子のクラス (子には追加の属性がないため) と父の属性を表すためのものです。

しかし、Rails コンソールを開いて「Son.new」と入力すると、GrandFather の属性はありますが、Father クラスの属性はありません。

0 投票する
2 に答える
8564 参照

ruby-on-rails - has_onethroughおよびマルチテーブル継承を介したポリモーフィックアソシエーション

私が現在Rails4.0.0beta1で開発しているプロジェクトでは、各ユーザーをエンティティにリンクできるユーザーベースの認証が必要でした。私はレールに少し慣れていないので、そうするのにいくつかの問題がありました。

モデルは次のとおりです。

私が必要としているのは、ユーザーが代理店またはクライアントのいずれかにリンクできるようにすることですが、両方にリンクすることはできません(これら2つは私がエンティティと呼ぶものです)。リンクをまったく持たず、多くても1つのリンクを持つことができます。

私が最初に探したのは、RailsでMutli-Table継承(MTI)を実行する方法でした。しかし、いくつかのことが私をブロックしました:

  • 箱から出して利用できませんでした
  • MTIは、私のような初心者のために実装するのはちょっと難しいように見えました
  • ソリューションを実装している宝石は古く、複雑すぎるか完全ではないように見えました
  • 宝石はしばらく更新されていなかったので、おそらくrails4の下で壊れていたでしょう。

だから私は別の解決策を探しました、そして私はポリモーフィックな関連を見つけました。

私は昨日からこれに取り組んでおり、Railsポリモーフィックhas_many:throughActiveRecord、has_many:through、およびポリモーフィックアソシエーションの助けを借りても機能するようにするのに少し時間がかかりました

上記の質問から例を作成することができましたが、時間がかかり、最終的に2つの問題が発生しました。

  1. ユーザーの関係をhas_oneアソシエーションに変換し、リンクされたエンティティに「ブラインド」でアクセスできるようにするにはどうすればよいですか?
  2. ユーザーが複数のエンティティを持つことができないように制約を設定するにはどうすればよいですか?
  3. 私がやりたいことをするためのより良い方法はありますか?
0 投票する
1 に答える
238 参照

ruby-on-rails - 複数のテーブル継承、サブクラスからアクセスできない列

更新:
table_name を self.table_name = に変更すると、レールが正しいテーブルを使用するようになったようです。

ただし、これらの奇妙なエラーが発生しています

元の質問:

私はテンプレートとオブジェクトを持っています:

しかし、私がObjekt.new.attributesコンソールで行うと、Templateオブジェクトの属性のみがリストされObjekt、 ..

のすべての列Templateは にもありますObjektが、Objektには追加の 10 列があります (主にフラグ)。

何が起きてる?レールがObjektクラスをobjektsテーブルに接続しないのはなぜですか?

0 投票する
0 に答える
238 参照

c# - エンティティ関係の多重継承の問題

私はこのエンティティモデルを持っています:

エンティティ オブジェクト モデル

Customerエンティティが必要です。これは、Personまたは のいずれかにOrganizationなります。両方にすることはできません。

今のところ、組織と個人の両方を指す顧客エンティティを思いつきましたが、null 可能なフィールド ( を意味するGuid?) を持ちます。これは、 と との必須ではない関係を持つことを意味しPersonますOrganization。何かのようなもの:

私はエンティティ フレームワーク 5、codefirst アプローチを使用していますが、まだデータベースを作成していません。この要件を満たすより良いモデルがあるかどうか疑問に思っていました。

0 投票する
2 に答える
2343 参照

symfony - doctrine 2による複数レベルの継承マッピング

「 Addressable」である(アドレスを持つことができる)3つのエンティティがあります。

配送先
お客様
配送センター

すべてのAddressableエンティティもGeolocatable (緯度と経度を持つ) ですが、トラック ポイントルート ポイント(緯度と経度の順序付けられたシーケンス) のように、 GeolocatableであるがAddressableではないエンティティがあります。

doctrine 2 (Symfony2 と YAML マッピングを使用) でこれを達成するための最良の方法は何ですか?

私の質問は次のとおりです。この問題に対する最善のアプローチは何ですか? マッピングされたスーパークラス? 単一テーブルの継承?マルチテーブル継承?教義のドキュメントを読んでも、これに最適なものはわかりませんでした。

それが重要な場合、私はPostgreSQLを使用しています。

0 投票する
1 に答える
588 参照

django - Django マルチテーブル継承は、モデル定義でリークされた変数でチョークします

Django 1.3は次のように応答します。

Django 1.5は次のように応答します。

私の2番目の反応(変数をプライベートにしようとした後)は、変数を削除することでした(これは機能しました)。


Python 2 では、リスト内包表記が制御変数をリークします。Django 1.5 にも同じ問題があるため、Django は親フィールド属性のオーバーライドを禁止しています。ただし、どちらの場合も、漏れた属性名_RebelliousChild__xは親で定義されていません。

ここで何が起こっているのですか?

PS "list(x.name for x in Parent._meta._fields())" を使用すると、"del x" よりもきれいになります。ジェネレーターが制御変数をリークしないことについては、前述のhttps://stackoverflow.com/a/4199355を参照してください。

0 投票する
1 に答える
1321 参照

django - モデルの継承 + django 管理者

cmsplugin_news のニュース モデルを再利用して、継承モデルにいくつかのフィールドを追加しています。(ここで説明したように、複数テーブルの継承。

私の admin.py では、NewsAdmin を拡張して独自のフォームを設定しています。

私がforms.pyで定義したもの:

シェル コンソールからオブジェクトを保存すると、モデルの継承がうまく機能するようです。しかし、django admin から MyNews オブジェクトを作成して部門にリンクしようとすると、このフィールドは保存されません。または、少なくともこの変更はどこにも表示されません

何も理解できません、誰か助けてくれませんか?どうもありがとうございました!