問題タブ [relationship]

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 投票する
1 に答える
6674 参照

django - Django での多対多のルックアップ

これはおそらく非常に単純で、Nelson Muntz の笑い声に値するものですが、私はさまざまなモデルの関係で多対多の接続を確立しようとして、本当に頭がおかしくなっています。

私は次のモデルを持っています (あなたの楽しみのために単純化されています!):

次のユーザーのイメージング:

  • Alice には 3 つのドキュメントがあり、そのうちの 1 つは非公開です (つまり、友達だけが見ることができます)。彼女はボブと友達で、マロリーを無視しており、イブには無関心です (保存された関係がないことを意味します)。
  • マロリーは 2 つのドキュメントを持っています。どちらも公開されており、誰に対しても無関心です。
  • Bob は 1 つのドキュメントを持っていますが、これは公開されており、誰に対しても無関心です。
  • イブはアリスを無視し、マロリーとボブに無関心です

ドキュメントを検索するユーザーは、次の情報を生成する必要があります。

  • ドキュメントを検索している Bob には 6 が表示されるはずです。これは、Alice が Bob を友人にしており、Bob は彼女のプライベート ドキュメントを表示できるためです。
  • Alice がドキュメントを検索すると、4、Bob 1、および彼女の 3 が表示されます。Alice は Mallory を無視しているため、Mallory の公開ドキュメントは表示されません。
  • ドキュメントを検索しているマロリーは、アリスの公開ドキュメント、彼女自身の 2、およびボブの 1 の 5 を参照します。
  • 文書を検索する Eve は、アリスを無視したため、マロリーとボブの公開文書を 3 つ表示します。

基本的に、私は上で説明したクエリセットを返すためのフィルターを理解するのに精神的な苦労をしています。誰でもアイデアはありますか?

編集

以下のフェルディナンドの回答のおかげで、彼が私に与えてくれたスタートで、私が望んでいたことを理解することができました. まず、多対多の関係を逆引きして、私と友達になった人のリストを取得します。

私が無視したすべての人を取得します。

閲覧可能なドキュメントのリストを取得する - 閲覧可能なドキュメント、私のドキュメント、または私と友達になったが無視していない人が作成したドキュメント:

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

ruby-on-rails - Rails で n:n の関係を管理するには?

多くの があり、それぞれがCompany多くの を持つことができるとしましょう。EmployeesEmployeeCompanies

基本的に私は持っています:

しかし、次のようなものを取得する方法について混乱しています。

  • 名前が「John」で始まる会社のすべての従業員
  • 会社のすべての従業員は、最初に名前、次に電子メールで注文します。

私が知らない魔法はありますか?例はデモ用です。説明をわかりやすくするのに役立つ場合は、自由に仮定を作成したり、変更したりしてください。

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

uml - UML クラス図での関係

クラス Tree、Node、および Edge (Edge クラスが必要です!) を使用してツリーをモデル化するアプリケーションがありますが、このクラス図で関係を表す方法がわかりません。これに関する他の記事を読みましたが、まだ疑問があります。

Tree オブジェクトには Node (そのルート) へのポインターがあり、->両端で多重度 1..1 の一方向の関連付け (Tree Node) を定義していると思います。そうですか?

各 Node オブジェクトには、そこから出てくるエッジ (Edge オブジェクト) へのポインターがあります。これらのエッジはノードが存在する場合にのみ存在するため、これは合成関連だと思います。

しかし、各 Edge オブジェクトには、エッジのターゲット ノードへのポインターがあります。->上記の Node Edge 構成を既に持っていることを考えると、この関係をどのように表すことができますか?

また、まだ読んでいる場合:)、各ノードには親ノードへのポインターがあります。ここでは、一方向の単項関連付けを使用しますが、この関係に使用する名前がわかりません。

助けてくれてありがとう。

0 投票する
3 に答える
3570 参照

entity-relationship - 本文中の実体関係表記

エンティティ関係の標準 (非グラフィカル) 表記法はありますか?

今、私は独自のジャンキー表記法を使用しています:

  • ユーザー >> 写真 , (1-多数)
  • ユーザー > プロファイル、(1-1 hasOne)
  • プロフィール < ユーザー , (1-1 所属先)
  • 写真 << ユーザー , (多数-1 所属)
  • 写真 <> タグ , (多-多)
0 投票する
1 に答える
16107 参照

ms-access - リレーションシップを削除する必要があるため、ms アクセスはフィールドを編集できませんが、削除するリレーションシップはありません

複数のテーブルにデータベースを構築しました。これらのテーブルの 1 つに、最初は 50 文字と定義されたフィールド (イニシャル) があります。全体を構築した後、そのフィールドを 3 文字に制限したかったことに気付きました。これを変更しようとしましたが、1 つ以上の関係を削除する必要があると表示されます。そこで、リレーションシップ ウィンドウを開いて、このフィールドに関連付けられている 1 つのリレーションシップを削除します。戻って文字制限を変更し、戻ってリレーションシップを再度追加できるはずです。したがって、現時点では、リレーションシップ ウィンドウのイニシャルに触れるリレーションシップはまったくありません。戻って文字制限を変更すると、同じエラーが発生します。同じエラーのため、イニシャルを削除して再作成することさえできません。私はプロジェクト全体を実行し、そのフィールドが表示された場所から取り出しました。それでも、同じエラー。何か案は?

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

php - テーブル内の値をカスケードします

'a'と'b'の2つのテーブルがあるとしましょう。'a'と'b'の関係は1対多です。両方のテーブルにフィールドを持たせますstatus。このフィールドの値は「アクティブ」および「非アクティブ」です。フィールドを「非アクティブ」に設定した場合、MySQLには、値statusを変更した行に関連付けられているすべてのテーブルにこれをカスケードする方法がありますか?statusそれとも、これはプログラムレベルで行う必要がありますか?

これが明確でない場合はお知らせください。

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

php - cakephp habtmの関係(データの保存)

HABTMに関連する質問は、stackoverflowにかなりの数で投稿されていますが、私はまだ問題の解決策を探しています。

特定のサブカテゴリに基づいてトピックを作成できるアプリケーションを作成しています。トピックを追加するときに、ユーザーは(同じフォームで)タグを求められます。これで、ユーザーが[追加]ボタンをクリックしてトピックへのタグの追加を終了すると、トピックは正常に追加されますが、タグは追加されません。

トピックとタグの両方の結合テーブルをtbl_tags_topics.(cakephpの規則で定義されているように)作成し、トピックとタグの両方のモデルで「hasAndBelongsToMany」配列を適切に定義しました。

私は今どのようなステップを逃していますか?

これに関連する質問がもう1つありますが、トピックに関連するタグをデータベースに正常に送信できるようになったら投稿します。(機能は、stackoverflowのタグの追加と添付の機能に似ています)

どんな助けでも大歓迎です。また、もし見つけたら、HABTMに関する良いチュートリアルを教えてください。

ありがとう

0 投票する
3 に答える
1496 参照

mysql - MySQL DB テーブルの関係を調査/分析する方法は?

108 個のテーブルを含む MySQL DB が与えられました。これらのテーブルがどのように接続されているか (できれば視覚的な方法で) を確認できる方法またはツール (ソフトウェア) があるので、各テーブルの使用法とすべてがどのように連携しているかを理解できます。「MySQL Tools」->「MySQL Administrator」と呼ばれる「読み取り専用」権限でアクセスしています。

テーブルはすべて InnoDB エンジンを使用しています。

※Macを使用しています

0 投票する
3 に答える
2954 参照

nhibernate - NHibernate で関連付け/関連コレクションをリロードする

OrderDetails のリストを持つ Order エンティティがある場合、NHibernateUtil.Initialize(Order.Details) を使用して、注文と共に詳細を簡単に読み込むことができます。したがって、NHibernate には、SQL ステートメントを生成するためのすべての情報が含まれていることは明らかです。しかし、条件を手動で作成せずに、詳細のみをデータベースに照会するにはどうすればよいでしょうか (Entity Framework の CreateSourceQuery に似ています)。NHibernateUtil.GetList(Order.Details) のようなものはありますか?

更新: Darin's answer this を使用して、最終的には最終的に終了しました。これは十分に一般的であり、エンティティ基本クラスで実装できます

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

ruby-on-rails - 単一テーブルの継承 (Rails) との 1 対多の関係の問題

ActiveRecord の STI と関係に問題があります。クラスメソッドで何かを見逃したと思いますが、よくわかりません。以下は私のモデルです:

今、特定のユーザーの下にあるすべての FreeAdvertisement を見つけたいと思います。

エラーが発生します:

を使ってハックすることはできますu.advertisements.find :all, :conditionsが、それは私がやりたいことではありません。この問題を解決するのを手伝ってください。前もって感謝します。