問題タブ [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.
cocoa - Core Data の別のエンティティからプログラムによって 1 つのエンティティに値を設定する
Core Data では、モデルに Worker、Task、SubTask の 3 つのエンティティがあります。それぞれに、その下のエンティティとの対多の関係と対 1 の逆関係があります。Worker には多くの Task があり、各 Task には多くの SubTask があり、各 SubTask には 1 つの parentTask があり、各 Task には 1 つの Worker があります。SubTask には、newObject メソッドで現在の時刻に設定される startTime 属性と、SubTaskArrayController クラスの endSubTask メソッドをトリガーするボタンがあります。endSubTask は、startTime から現在までの時間を計算し、その値を SubTask 属性 timeWorked に設定します。ここまでは順調ですね。問題:
選択したタスクの totalTimeWorked 属性を取得してそれ自体を更新する最良の方法は何ですか?
私が何かをしようとすると
[currentSubTask setValue:newTotalTime forKey:@"parentTask.totalTimeWorked"];
私は得る:
[ setValue:forUndefinedKey:]: エンティティ SubTask は、キーparentTask.totalTimeWorked のキー値コーディングに準拠していません。
現在選択されている SubTask の parentTask の属性にアクセスするにはどうすればよいですか?
ruby-on-rails - Ruby on Railsで同じ2つのテーブルを使用する複数の1対多の関係?
2 つのテーブルを持つデータベースがあります。ユーザーとリビジョン。Revisions には、users テーブルに対して複数の 1 対多の関係があります。たとえば、created_by、verified_by、published_by (各フィールドは外部キーのユーザー ID です)。
Rails モデルでこの関係を定義するにはどうすればよいでしょうか?
ruby-on-rails - Ruby on rails - 同じモデルを 2 回参照しますか?
activerecord
コマンドを使用してモデルに二重関係を設定することはできgenerate scaffold
ますか?
たとえば、User
モデルとPrivateMessage
モデルがある場合、private_messages テーブルは と の両方を追跡する必要がsender
ありrecipient
ます。
明らかに、単一の関係の場合、私はこれを行うだけです:
2 つの関係を設定する同様の方法はありますか?
また、リレーションのエイリアスを設定する方法はありますか?
したがって、次のように言うのではなく:
次のようなものを使用できます。
@message.sender
また@message.recipient
アドバイスをいただければ幸いです。
ありがとう。
database - 多くの種類のエンティティに対する多対多の関係
ディスク、フォルダー、ファイル、リンクの 4 つのテーブルがあります。これは 4 種類のエンティティであり、属性の数と種類が異なるため、1 つの種類 (たとえば 1 つのテーブル) にマージすることはできません。そして関係があります:
- ディスクには、フォルダ、ファイル、およびリンクを含めることができます。
- フォルダには、フォルダ、ファイル、およびリンクも含めることができます。
- ファイルとリンクには何も含めることはできません。
さらに、すべてのエンティティには、表示される順序があります (たとえば、アルファベット順などではなく、「ユーザー定義」)。これは実際の問題を単純化した例であり、実際にはもっと多くのエンティティがあり、関係はより複雑です。
では、テーブルの提案された構造は何ですか?
質問に答えてくれたみんなありがとう
database - Natural ID で関係を作成したり、内部 ID を使用して Natural ID 関係をエミュレートしたりすることはありますか?
重複の可能性:
サロゲート対。自然/ビジネスキー
2 つのテーブルが与えられた場合、レベル 1 [ID、タイトル、番号] レベル 2 [ID、FKID???、タイトル、番号]
システムのユーザーは、レベル 2 がレベル 1 の番号に基づいてレベル 1 に関連付けられていることを理解しています。私の質問は、内部 ID に基づいて関係を作成し、「番号」との関係を「エミュレート」しますか、それとも単に「数字」フィールドとそれで終わりですか?
c# - N個の親子関係について頭を悩ませている
これをできる限り説明しようと思います。このロジックを理解するのにかなり苦労しています。
基本的に、親と子のプロパティでそれぞれ構成される何千ものオブジェクトを含むコレクションがあります。
したがって、大まかに、これは次のとおりです。
私が理解しようとしているのは、これをプレーンな TreeView コントロールに組み込む方法です。関係を構築する必要がありますが、それらが混在する可能性があるため、その方法がわかりません。ツリーがどのように見えるべきかで、おそらくこれをよりよく説明できます。
したがって、コレクション内に次のアイテムがあるとします。
私は自分のツリーを次のように見せたいと思います:
C#でこれを行うにはどうすればよいですか? 約 50 ノードの深さに達すると予想されるブランチがいくつかあるため、最大 N 個のリレーションシップをサポートする必要があります。
php - 重複した行が返される原因となる 1 対多のリンク テーブル
これまで見てきたことはすべて、データベース内の重複するエントリを自動的に削除することに関するものでした。これの冒頭で強調したいのは、データベースには重複データがないということです。また、RDBMS の設計、正規化、関係、そして何よりも SQL についてまだ学んでいるという事実から始めましょう。
clientid (PK) と client_name を持つクライアントのテーブルがあります。roleid (PK) と role_name を持つロールのテーブルがあります。どのクライアントにも、複数のロールを関連付けることができます。そこで、clientid と roleid を 2 つのフィールドとして client_role_link テーブルを作成しました。次に、これを実行します。
2 つのロール (ロール '1' と '2') が関連付けられているクライアントがあるとします。このクエリは、ロールごとに 1 行ずつ、合計 2 行を返します。これらの結果が返ってきたら、while
ループを使用して結果を循環し、<select>
リストに出力します。次に、<option>
リストされている同じクライアントで 2 つの 's が発生します。
クエリが 2 つの行を返す理由を理解しています。それは理にかなっています。したがって、ここに 2 つの質問があります。
- 使用すべきより優れたデータベース/テーブル設計、またはより最適化されたクエリはありますか?
- それとも、これは PHP で処理する必要があるものですか? もしそうなら、すべての結果を配列に追加し、配列をループバックして重複を削除する、より洗練されたソリューションはありますか?
考え?
database - Cake PHP テーブルリレーションの使用
作成関係の使用法は何ですか
「belongsTo」という意味で作成したテーブルを「hasMany」に追加するとどうなりますか? エラーが発生します。ケーキはモデルで指定された関係をどのように使用しますか?
cakephp - CakePHP Relationships - メッセージ システムの関係をセットアップする方法は?
Facebookに似たメッセージ機能を作ろうとしています。Facebookではなく、メッセージだけです。簡単な説明はこのようにします。
1) 多数のユーザーが存在します ( user テーブル) 2) 1 人のユーザーが 1 人または複数の人にメッセージを送信できます。3) 同じメッセージに複数の返信がある場合があります。4) 複数人に送る場合。全員が返信でき、全員に表示されます。
使用したテーブル
メッセージ テーブル
message_user (テーブル)
CakePHP の関係は次のとおりです。
メッセージ モデル
MessageUser モデル
質問:
1) 私のアプローチは正しいですか? または、データベース スキーマを修正する必要があります。2) はいの場合、受信トレイのデータを取得するにはどうすればよいですか? 人々が私に送ったメッセージの会話を表示したいので、これは少し複雑です。
たとえば、ユーザー 1 がユーザー 2 にメッセージを送信します。ユーザー 2 は同じメッセージに 2 つの返信を追加します。次に、ユーザー 1 の受信トレイには 1 つのメッセージのみが表示されます。そして開くと。以前のメッセージも表示されます.. (これは Facebook に似ています)
ここで見られるもう 1 つの問題は、メッセージを削除する方法です。ユーザー 1 が、自分の受信トレイに何も表示しないはずのメッセージを削除したとします。しかし、ユーザー 2 は、彼が行った会話全体を見ることができます。
cakephp - Cakephp の関係の問題。データを取得するには?
Facebookに似たメッセージ機能を作ろうとしています。Facebookではなく、メッセージだけです。簡単な説明はこのようにします。
1) 多数のユーザーが存在します ( user テーブル) 2) 1 人のユーザーが 1 人または複数の人にメッセージを送信できます。3) 同じメッセージに複数の返信がある場合があります。4) 複数人に送る場合。全員が返信でき、全員に表示されます。
使用したテーブル
メッセージ テーブル
message_user (テーブル)
CakePHP の関係は次のとおりです。
メッセージ モデル
MessageUser モデル
質問:
1) 私のアプローチは正しいですか? または、データベース スキーマを修正する必要があります。2) はいの場合、受信トレイのデータを取得するにはどうすればよいですか? 人々が私に送ったメッセージの会話を表示したいので、これは少し複雑です。
たとえば、ユーザー 1 がユーザー 2 にメッセージを送信します。ユーザー 2 は同じメッセージに 2 つの返信を追加します。次に、ユーザー 1 の受信トレイには 1 つのメッセージのみが表示されます。そして開くと。以前のメッセージも表示されます.. (これは Facebook に似ています)
ここで見られるもう 1 つの問題は、メッセージを削除する方法です。ユーザー 1 が、自分の受信トレイに何も表示しないはずのメッセージを削除したとします。しかし、ユーザー 2 は、彼が行った会話全体を見ることができます。