問題タブ [self-reference]
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 - 自己参照リストの使用
Python などの言語で自己参照リストを作成できることはわかっています。
自己参照リストから恩恵を受けるアルゴリズムは? 一つも思いつきません。
ありがとう。
entity-framework - Entity Framework 自己参照多対多ペイロード (部品表 BOM)
私はしばらく前にこの質問をしましたが、答えはありませんでした。非常に実用的ですが、これは EF の最も奇妙な実装であると思います。ここに私の以前の投稿があります:
追加のキーワード Payload とより明確な理解で再度質問することにしました。
Apress の出版物: Entity Framework 4.0 Recipes: A Problem-Solution Approach、ページのレシピ 2-6。26 のタイトルは、ペイロードを使用した多対多の関係のモデル化です。レシピ 2-7 のタイトルは、自己参照関係のモデル化です。
それを読むと、私の問題が何であるかの基礎が得られます。違いは、私の知る限り、本や宇宙のどこにも議論されていない、ペイロードを使用した自己参照多対多があることです。
簡単に言うと、ID フィールドと Type フィールドを持つ Resource テーブルがあります。また、Parent_ID と Child_ID で構成される複合主キーと複合外部キーを持つという点で、ジャンクションまたはブリッジ テーブルとして機能する ResourceHierarchy テーブルもあります。したがって、リソース エンティティは、子リソースまたは親リソース、またはその両方として機能できます。
ここまでで、Entity Framework は Resource Entity を生成しますが、ResourceHierarchy Entity は、EDMX ファイルではエンティティではなく関係のみとして扱われるため、実際には EDMX Designer から隠されます。
生成された Resource Entity には、Resources や Resources1 などのナビゲーション プロパティがあり、それらの名前を Parents と Children に変更しました。
だから私はこのようなコードを書くことができます: (それは何もしません。いくつかの例を示しているだけです)
他の 2 つのリソースによって共有されているリソースがあるとします。他の 2 つのリソースは、そのリソースの親になります。上記のリソースは、それぞれの親の唯一の子でもあります。はい、リソースは 3 つ以上の「親」を持つことができます。必要に応じて父親が 2 人でもかまいませんが、先祖は子供を共有しますか? 私の時計ではありません。とにかく... この時点から意味をなすためには、現実世界のシナリオからこれを考える必要があります。
開始するためのコードを次に示します。
したがって、ネジのある 2 つのウィジェットがあります。WidgetA と WidgetB は、Web サイトに製品としてリストされています。WidgetAが売れたらWidgetBのネジはどうなるの?これで、Resource Entity に Quantity プロパティが必要であることがわかりました。
何ヶ月も早送りして、私が現在プロジェクトに参加しており、EFがいかに制限されているかを理解した後、胎児の位置を占めています.
この部分はもう少し複雑になります。もしも
子の 2 つを親 1 に、子の 2 つを親 2 に割り当てることができるようにするには、どうすればそれを知ることができるでしょうか。
これは、ResourceHierarchy テーブルに「Required」と呼ばれる別の quantity(int) 列を追加することによってのみ実行できるため、次のようになります。
そのため、ペイロードをデータベースの ResourceHierarchy エンティティにアタッチしました。EDMX デザイナーからモデルを再生成すると、ResourceHierarchy は関係ではなくなり、エンティティになります。代わりに、EDMX デザイナーから ResourceHierarchy テーブルのみを更新することを選択した場合、ストレージ モデルに Required プロパティが表示されますが、ResourceHierarchy はリレーションシップであるため、概念モデルまたはマッピング モデルのどこにもありません。ただし、Resource テーブルと ResourceHierarchy テーブルを削除して再生成すると、ResourceHierarchy テーブルが Required 列で表示され、Entity になります。
この設定で作業することは可能ですが、単に ResourceHierarchy Relationship にアクセスして Required プロパティを取得するよりもはるかに困難です。ResourceHierarchy EntityType にストレージ モデルの Required プロパティが含まれていても、AssociationSet にアクセスした後、コードから Required プロパティにアクセスできません。ResourceHierarchy テーブルが EF のリレーションシップである場合、ストレージ モデルでは次のようになります。
生成された EDMX ファイルをマージしようとすると、ResourceHierarchy がエンティティまたはリレーションシップのいずれかであり、両方ではないことを示すエラーが表示されます。
これは、ペイロードを使用した多対多と呼ばれます。これを自己参照階層で実装しようとすることは、EF では悪夢です。私は VS2010、SQL 2008、および .NET 4.0 Framework を使用しています。
コンセプトは、それ自体が他のリソースで構成されているか、他のリソースを構成するのに役立つリソースで構成され、それぞれが一定量のリソースを必要とする製品を持ちたいということです。これは基本的に部品表の BOM です。EF は BOM モデルをサポートしていませんか?
SQL Server 2008 の新しい HIERARCHYID 機能は、ひょっとしたら役に立ちますか?
linq-to-entities - LINQtoEntityの問題。自己参照エンティティ
自己参照エンティティ(0から*)があります。1つ削除しようとすると、エラーが発生しました。
データの構造は次のとおりです。
servise1
--service 1.1
--service 1.2
--- service 1.2.1
--- service 1.2.2
--- service 1.2.3
--service 1.3
--service 1.4
service 2
等々...
すべてのサブサービス(カスケード)を含むサービスの1つを削除する必要があります。
私を助けてください!)。
ruby-on-rails - 空の自己参照アソシエーションを持つモデルのアクションを2回レンダリングするレール
私はこれにかなり困惑しています。誰もが問題が何であるかをすぐに教えてくれるとは思えませんが、これをデバッグして調査する方法を提案する答えは大歓迎です-私はパスをたどるのにあまり運がなくても、いくつかのデバッグ呼び出しをコントローラーに入れてみましたRailsの根性を通して、調査するソースのどこへのポインタが素晴らしいでしょう。
これは、Ruby 1.8.7 /Rails2.3.5とRuby1.9.2/Rails3.0.1の両方で発生します。
私は次のモデルを持っています:
次のルートで:
これらが複数の深さでネストできないことを保証する検証もあります。つまり、コレクションは親コレクションを持つことも、子コレクションを持つこともできますが、両方はできません。
コレクションに子がない場合(つまり、サブコレクションであるかスタンドアロンコレクションである場合)、そのコレクションの下のアクションは2回レンダリングされます。言い換えると:
子供がいるコレクションのショーページを1回リロードします。
子のないコレクションのショーページを1回リロードします。
他のすべてのネストされたリソース(その中にはたくさんあります)でも同じことが起こります-例:/ collections/[コレクション名]/profile、/ collections/[コレクション名]/works、/ collections/[コレクション名]/people --コレクションに子がある場合、アクションはすべて1回レンダリングされ、戻ります。それ以外の場合は、2回レンダリングします。
注-ブラウザには最初のレンダリングの結果が表示されますが、ブラウザのステータスバーには、2番目のレンダリングが完了するまで「待機中」と表示されますが、少なくともFirefoxまたはSafariでは画面が再描画されません。
同じ構造のテストアプリを作成しました(これが奇抜さの原因である場合に備えて、モデルに同じ名前の「コレクション」を使用します)。エラーは再現されません。
私が上で言ったように-これをデバッグする方法でさえどんなアイデアでも大いに感謝されるでしょう。
many-to-many - sqlalchemyにおける多対多の自己参照関係
私は次のようなsqlalchemyで自己参照の多対多の関係(Lineは多くの親行と多くの子行を持つことができることを意味します)を作成しようとしています:
しかし、次のエラーが発生します:sqlalchemy.exc.ArgumentError:リレーションシップLine.next_linesの親/子テーブル間の結合条件を判別できませんでした。'primaryjoin'式を指定します。'secondary'が存在する場合は、'secondaryjoin'も必要です。
私がこれをどのように改善できるか知っていますか?
ruby-on-rails - Mongoid 自己参照結合
私は現在、職場で秘密のサンタを追跡するのに役立つ小さなRails 3アプリに取り組んでいます。この最後の問題を解決しようとして、私はほとんど終わっていて、完全に困惑しています。
Participant
誰が誰のためにギフトを購入する必要があるかを表すには、自己結合が必要なモンゴイド ドキュメントがあります。私が何をしても、これを機能させることができないようです。私のコードは次のとおりです。
Rails コンソールを使用して、いずれかのプロパティを設定すると、結合の反対側に反映されず、保存して再読み込みした後にすべてが失われることがあります。その答えが私の顔を睨みつけていることは確かですが、何時間もじっと見つめた後でも、まだそれを見ることができません。
model-view-controller - Rails 3 での自己参照モデルとビューのヘルプ
クライアントが親クライアントを持つことができる単純なクライアントテーブル(またはモデル)があります(1つだけ、または何もありません)。私はこのようにモデル化しました:
それはうまくいくようです。2 つの質問があります。
- R3モデルでその関係を表現するのは正しい理由ですか。
- _form.html.erb はどのように見えるべきですか? たとえば、可能なすべてのクライアント (およびなし) を親フィールドとしてリストするドロップダウン ボックスが必要です。
iphone - コア データ: 自己参照テーブル
それ自体への参照を含むエンティティが Core Data モデルにあります。つまり、ページはページの子コレクションを持つことができます。コンパイルすると、次の警告が表示されます。
「Page.pages -- 多対多の関係には逆がありません: これは高度な設定です (特定の関係に対してオブジェクトを複数の宛先にすることはできません)」
整合性を維持するためにコア データには逆の関係が必要であることを読み、これを提供したいと思います。データモデルが変更されてもかまいません。これは開発の初期段階です。この状況に対処する適切な方法は何ですか?
ruby-on-rails - 自己参照の関連付けの両側を破壊するための最良の方法は何ですか?
私のプロジェクトでは、自己参照の関連付けがあります。
私はユーザーモデルを持っています:
そして関係モデル:
2人のユーザーが互いにピアである場合、データベースには明らかに2つのレコードがあります。
1人のユーザーが関係を終了することを選択した場合、関係の片側だけでなく、両方のレコードを破棄するようにしたいと思います。
コントローラにリレーションシップを2回ロードする(リレーションシップの両側に1回ずつ)よりも、これを実行するためのより良い方法はありますか?
hibernate - JSP / Struts2 / Hibernate:自己参照テーブルをループします
次の列を持つPERSONという自己参照テーブルがあるとします。ID、PARENT、ここでPARENTは、PERSONテーブル内の別の要素のID列への外部キーです。もちろん、多くの人が同じ親を持つことができます。
データベースを処理するために、遅延フェッチモードでHibernate3を使用します。Hibernateはデータベースからperson要素をフェッチし、Struts2アクションによってValueStackに配置され、結果のJSPページで使用されます。
ここで、質問は次のとおりです。JSPで、この人物要素のすべての子(および子の子など)を表示するにはどうすればよいですか?
もちろん、n + 1の子の場合、person.personに対して<s:iterator>タグを使用できます。また、person.person.personの上に別の<s:iterator>タグをネストして、n+2個の子を取得することもできます。
しかし、これを自動化された方法で、最後のn + pの子まで、すべてのn + 1..n +p要素のすべての子をプロセスで表示したい場合はどうなりますか?
私は十分に明確になっていると思います。いつもありがとうございました。
--TBW。