1
00:00:00,690 --> 00:00:06,510
このビデオを歓迎します。オブジェクト参照を使用してデータを関連付ける別の方法を紹介します。

2
00:00:06,510 --> 00:00:07,430
&nbsp;

3
00:00:07,620 --> 00:00:12,600
だから私たちが始まる前に私はここで同じディレクトリに新しいファイルを作るつもりです。私はこれを呼びます。

4
00:00:12,600 --> 00:00:13,260
&nbsp;

5
00:00:13,540 --> 00:00:15,590
参考文献J.

6
00:00:16,530 --> 00:00:22,500
そして私は前のレッスンからそのファイルにすべてをコピーして、これを変更します。

7
00:00:22,500 --> 00:00:23,560
&nbsp;

8
00:00:23,610 --> 00:00:28,310
私がやることの最初のことは、私たちが矛盾するものではなく、以前に行ったことを上書きしないように、使用するデータベースを変更することです。

9
00:00:28,310 --> 00:00:30,730
&nbsp;

10
00:00:30,900 --> 00:00:35,610
だから私はblogg demoという名前をあまりにも強調していくつもりです。

11
00:00:35,820 --> 00:00:36,410
大丈夫。

12
00:00:36,540 --> 00:00:39,490
そして、私は先に進んで、ここでたくさんのものを取り除くつもりです。

13
00:00:39,690 --> 00:00:43,410
私たちがモデルに持っているスキーマを除いて、ほとんどすべて。

14
00:00:43,650 --> 00:00:48,230
まず、データの参照と埋め込みの意味について説明します。

15
00:00:48,480 --> 00:00:53,940
最後のビデオで最後に行ったことは、名前の付いたこのようなユーザーがいる場所にデータを埋め込んだことです。そこにも電子メールがあります。

16
00:00:53,940 --> 00:00:57,700
&nbsp;

17
00:00:57,720 --> 00:01:05,190
そして、POST配列があり、その配列内の各ポストは実際に配列の中に格納され、タイトルと内容はこのようになります。

18
00:01:05,190 --> 00:01:11,910
&nbsp;

19
00:01:11,910 --> 00:01:12,790
そこに行く。

20
00:01:13,590 --> 00:01:20,270
POSTアレイ内のさまざまな投稿を聞くことができます。

21
00:01:20,570 --> 00:01:27,990
今私がこのレッスンで見せていることは、私たちが実際にやっていることは、実際の投稿ではなく、ポスターの配列と内部に格納することを除いて、非常に似ています。

22
00:01:27,990 --> 00:01:33,380
&nbsp;

23
00:01:33,570 --> 00:01:37,980
私たちはたくさんのIDを持つので、このような長いIDを持つようにします。

24
00:01:41,430 --> 00:01:42,120
&nbsp;

25
00:01:42,270 --> 00:01:46,250
これらのアイデアは個々の投稿に対応します。

26
00:01:46,250 --> 00:01:55,230
それで、ここには、これと等しいIDを持つ投稿があります。それはあなたが何か他のものを呼び出すというタイトルを持ちます。

27
00:01:55,230 --> 00:01:57,130
&nbsp;

28
00:01:57,480 --> 00:02:03,980
したがって、もう一度重要な違いは、名前の参照先のIDを格納していることです。

29
00:02:04,140 --> 00:02:09,520
私たちは、投稿全体を埋め込むのではなく、別の投稿のIDを参照しています。

30
00:02:09,900 --> 00:02:11,180
さあ、始めましょう。

31
00:02:11,370 --> 00:02:17,280
そして、投稿をポストスキーマの配列にするのではなく、スキーマをいくつか変更する必要があります。

32
00:02:17,610 --> 00:02:20,400
実際にそれを配列にしています。

33
00:02:20,490 --> 00:02:25,030
しかし、我々はオブジェクトを渡すつもりです、そして、オブジェクトは、このように見えるでしょう。

34
00:02:25,080 --> 00:02:27,190
私はスペースがちょっと外に出ることを意味します。

35
00:02:27,420 --> 00:02:37,580
私たちのオブジェクトには2つの主要なプロパティタイプがあり、refとtypeはマングースになります。スキーマタイプはオブジェクトIDとrefがポストになります。

36
00:02:37,590 --> 00:02:47,090
&nbsp;

37
00:02:47,130 --> 00:02:49,020
ここで私がやったことについて話しましょう。

38
00:02:49,050 --> 00:02:55,740
私は、ユーザースキーマにはpost属性があり、それは配列だが、ここにあるような配列の配列ではないと言ってきた。

39
00:02:55,740 --> 00:02:58,110
&nbsp;

40
00:02:58,750 --> 00:03:00,870
あるいは、ポストスキーマの配列です。

41
00:03:00,870 --> 00:03:03,570
これは実際にはオブジェクトIDの配列です。

42
00:03:03,660 --> 00:03:06,080
そして、これは私たちがその構文を書く方法です。

43
00:03:06,330 --> 00:03:11,890
これはポストに属するmongooseオブジェクトIDで、保存できます。

44
00:03:12,120 --> 00:03:16,320
私たちが間違ったことをしなかったことを確認するために、ファイルを実行することができます。エラーがないことを確認してください。

45
00:03:17,310 --> 00:03:18,560
すばらしいです。

46
00:03:18,600 --> 00:03:23,520
次に、後で投稿を追加できる単一のユーザーを作成することから始めましょう。

47
00:03:23,640 --> 00:03:37,020
だから、ユーザーは作成し、これはgmailのドットコムでBobの電子メールを与え、名前はBob

48
00:03:37,410 --> 00:03:43,680
Filcherになり、私たちは保存します。そして、それをそのまま残しておきます。コールバックを追加するのではなく作業します。

49
00:03:43,920 --> 00:03:45,770
&nbsp;

50
00:03:45,810 --> 00:03:48,830
だからこれは私たちの最初のユーザーを作成するだけです。

51
00:03:48,900 --> 00:03:53,160
ファイルを実行しましょう。

52
00:03:53,160 --> 00:03:53,700
大丈夫。

53
00:03:53,880 --> 00:03:58,630
だから私たちは何も見ませんが、私たちはマンガに行って調べることができます。

54
00:03:58,640 --> 00:04:11,370
だから、Digbyの使用ログのデモにもアンダースコアを表示して、ユーザーを見つけることができます。彼の名前で1人のユーザーがいます。

55
00:04:11,360 --> 00:04:12,070
&nbsp;

56
00:04:12,150 --> 00:04:19,170
Bob Belcherの電子メールボブgmailのドットコムとまだ投稿を追加していないので空の投稿。

57
00:04:19,170 --> 00:04:19,740
&nbsp;

58
00:04:19,920 --> 00:04:25,800
&nbsp;

59
00:04:25,800 --> 00:04:31,620
&nbsp;

60
00:04:31,620 --> 00:04:32,330
ここから抜け出して、私がしたいことは、このユーザーに投稿を追加することです。その作成ステートメントを取り除くつもりです。あなたがそれを見ることができるように、私は何をしますか？新しい投稿をしていますか？

61
00:04:32,430 --> 00:04:38,080
したがって、ポストドックを作成して、それをユーザーとは別に作成しています。

62
00:04:38,190 --> 00:04:49,530
&nbsp;

63
00:04:50,550 --> 00:04:57,940
&nbsp;

64
00:04:57,940 --> 00:05:05,650
だから我々はそのポストを作っているし、最高のバーガーを調理して内容を書いて、それだけで法律のようなものを記入するのではなく、それを保存して保存するというタイトルを付けてくれるだろう。ポストして、今度はコールバックエラーとポストを追加し、そのログポストをキャンセルするだけです。時間のためにエラーを処理せずにファイルを実行します。

65
00:05:05,650 --> 00:05:12,510
&nbsp;

66
00:05:13,980 --> 00:05:18,120
そして、IDを持つ新しい投稿をデータベースに追加しました。

67
00:05:18,160 --> 00:05:22,950
これを覚えている。 D. 全体を覚えている5 6 2 5 8 3 7 8。

68
00:05:22,960 --> 00:05:23,530
今は冗談だよ。

69
00:05:23,530 --> 00:05:25,630
しかし、それはどのように見えるのか覚えています。

70
00:05:25,780 --> 00:05:28,600
それから私たちは私たちのコンテンツとタイトルを持っています。

71
00:05:28,600 --> 00:05:28,920
大丈夫。

72
00:05:28,930 --> 00:05:30,790
だからそこから出よう。

73
00:05:30,810 --> 00:05:35,880
だから我々が次にやりたいことは、そのIDを使って投稿とユーザーをどのように結びつけることができるかということです。

74
00:05:36,310 --> 00:05:40,090
そしてそれをするために、私は実際に別の投稿をする段階を踏むつもりです。

75
00:05:40,090 --> 00:05:42,230
それで、これを最高のハンバーガーを作る方法と呼ぶことにしましょう。

76
00:05:42,390 --> 00:05:51,280
パート2これは新しい投稿を作成し、その投稿を保存した後、ユーザーPABXを検索します。

77
00:05:51,280 --> 00:05:52,190
&nbsp;

78
00:05:52,260 --> 00:05:59,480
だから私たちはユーザーの検索を行うつもりだと私たちは1つを見つけると私たちはあなたの名前を見つけるでしょう。

79
00:05:59,760 --> 00:06:07,370
今度は電子メールをgmailのドットコムでBobとしてから、このコードを実行してから、これを見つけて見つけます。

80
00:06:08,120 --> 00:06:12,640
&nbsp;

81
00:06:13,490 --> 00:06:14,250
OK。

82
00:06:14,350 --> 00:06:15,380
そう、多くのことが起こっています。

83
00:06:15,670 --> 00:06:18,760
投稿が作成されたら投稿を作成します。

84
00:06:18,880 --> 00:06:24,850
ここでは、このユーザーの場合、既に作成済みのユーザーを探しています。必要な場合は、エラーを処理します。

85
00:06:24,850 --> 00:06:29,860
&nbsp;

86
00:06:30,490 --> 00:06:35,800
それ以外の場合は、ユーザーの投稿に投稿を追加します。

87
00:06:35,930 --> 00:06:45,700
&nbsp;

88
00:06:46,380 --> 00:06:53,100
それで、ユーザーの投稿が見つかりました。私たちはそれをここに呼び、私たちはプッシュポストを押し込みます。ポストは、私たちが作成したばかりのポストを参照しています。ああ、すごいよ。

89
00:06:53,110 --> 00:06:56,570
&nbsp;

90
00:06:56,800 --> 00:06:58,450
それが機能すれば保存します。

91
00:06:58,560 --> 00:07:03,760
投稿を保存してからユーザーを絞り込む投稿変数があります。

92
00:07:03,900 --> 00:07:07,090
この場合は、gmailのドットコムでメールボブを持つもの。

93
00:07:07,210 --> 00:07:14,340
そして、それを見つけたら、新しいポストをそのポスト配列に追加します。

94
00:07:14,620 --> 00:07:15,880
その後、それを保存しましょう。

95
00:07:16,060 --> 00:07:20,160
だから、後で私たちは別の発見されたユーザーを保存する必要があります。

96
00:07:20,800 --> 00:07:31,990
そして、はい、私たちは別のコールバックを必要とし、このコールバックにはエラーがあり、何が起きているのかを本当に明確にするためにこのデータを呼び出します。

97
00:07:31,990 --> 00:07:33,450
&nbsp;

98
00:07:33,580 --> 00:07:36,880
&nbsp;

99
00:07:39,610 --> 00:07:46,720
ここでは、エラーを処理し、そのログデータを取り消すエラーがない場合にのみ処理します。

100
00:07:46,790 --> 00:07:48,750
私たちはここにたくさんいる。

101
00:07:48,760 --> 00:07:56,200
だから、投稿を作成してユーザーを見つけてから、その投稿をユーザーの投稿にプッシュしてユーザーを保存し、データの印刷が完了したらそれを押します。

102
00:07:56,200 --> 00:07:59,120
&nbsp;

103
00:07:59,350 --> 00:08:03,010
私たちが何を得るのか見てみましょう。

104
00:08:03,000 --> 00:08:03,910
大丈夫。

105
00:08:04,140 --> 00:08:04,960
それはうまくいった。

106
00:08:05,110 --> 00:08:08,640
ここにBob Belcherのメールアドレスがあります。

107
00:08:08,640 --> 00:08:15,360
ここにユーザIDがあり、投稿の代わりに1つのアイテムを持つ配列があり、オブジェクトIDと埋め込みコードがあるときのものです。

108
00:08:15,390 --> 00:08:21,500
S. 埋め込みデータを使って作業していました。

109
00:08:21,550 --> 00:08:26,230
私たちはポスト全体を持っていたので、代わりにこの配列が実際にデータを見ました。

110
00:08:26,380 --> 00:08:27,730
今私たちはIDを見ているだけです。

111
00:08:30,470 --> 00:08:31,390
&nbsp;

112
00:08:31,540 --> 00:08:33,210
それでもう一つ追加しましょう。

113
00:08:33,390 --> 00:08:35,100
だからパート3をやります。

114
00:08:35,400 --> 00:08:38,580
そして、それの代わりに、その1つのテキストが吹いている。

115
00:08:38,700 --> 00:08:41,370
離れて話すことが簡単にできるようにちょうどちょっと変わっていくつもりです。

116
00:08:41,380 --> 00:08:45,370
そして、領事がその投稿を追加します。

117
00:08:45,370 --> 00:08:51,330
ここでは2つのオブジェクトIDがあり、それぞれが個々の投稿に対応しています。

118
00:08:51,700 --> 00:08:52,660
OK。

119
00:08:53,010 --> 00:08:55,020
だから私たちはそれらをどのように関連付けることができます。

120
00:08:55,140 --> 00:09:00,290
しかし今、我々はこのオブジェクトIDをどのように取って正しい投稿を見つけるのかを理解する必要があります。

121
00:09:00,580 --> 00:09:02,260
ユーザーを探したいとします。

122
00:09:02,500 --> 00:09:08,190
そして、IDだけでなくユーザーも投稿したいと思っていますが、すべてのデータが必要です。

123
00:09:08,560 --> 00:09:14,710
だから私はコンソールをクリアするつもりです、そして、私はまた、この巨獣をここでコメントするつもりです。

124
00:09:14,720 --> 00:09:21,630
それで、私たちがしたいことは、ユーザーを見つけてそのユーザーのすべての投稿を見つけることです。

125
00:09:21,730 --> 00:09:23,990
実際には1つの方法でそれを行う方法があります。

126
00:09:24,120 --> 00:09:25,840
だから私たちは最初にユーザーを見つける必要があります。

127
00:09:26,010 --> 00:09:31,990
それはユーザーの検索であり、私たちはもう一度見つけて、次に渡す必要があり、私たちが探しているのはgmailのドットコムのボブの電子メールです。

128
00:09:32,230 --> 00:09:37,100
&nbsp;

129
00:09:38,250 --> 00:09:39,750
そして、これは新しいものです。

130
00:09:39,900 --> 00:09:41,400
だから我々は以前これを見たことがない。

131
00:09:41,560 --> 00:09:51,190
私たちはポピュレートするつもりなので、ここで説明します。

132
00:09:55,920 --> 00:09:57,420
OK。

133
00:09:58,360 --> 00:10:02,920
だからここでやったことは、複数の部分を持つより長いクエリを書いたことです。

134
00:10:02,910 --> 00:10:04,570
だから我々はユーザーを探している。

135
00:10:05,010 --> 00:10:12,210
&nbsp;

136
00:10:12,220 --> 00:10:19,500
実際にフィールドのポピュレートを作成するポピュレート・ポストを変更して、これらのオブジェクトIDをすべて検索して正しいデータを見つけ、それをポスト・アレイに貼り付けてから、execを実行して実際にクエリを開始します。

137
00:10:19,500 --> 00:10:20,580
&nbsp;

138
00:10:20,590 --> 00:10:21,720
だからちょっと変だ。

139
00:10:21,970 --> 00:10:23,220
私たちは1つを見つける。

140
00:10:23,380 --> 00:10:28,870
しかしここではコールバックを使用していないことに気づき、人口を変えていきます。そして、実際にこのことが起こるように、最後にDot

141
00:10:28,870 --> 00:10:33,070
execを与えています。

142
00:10:33,120 --> 00:10:38,000
それでは、コールバックをexecに渡します。これは、コードを実行するときです。

143
00:10:38,470 --> 00:10:39,920
もし私たちがこれを正しければ。

144
00:10:39,970 --> 00:10:41,560
それで、エラーがあるかどうかを確認しましょう。

145
00:10:41,560 --> 00:10:44,690
最初の評議会は、エラーをログします。

146
00:10:45,070 --> 00:10:53,590
さもなければ、私たちのユーザはposts属性の中にあらかじめ設定されたすべての投稿を持っているので、そのログユーザをキャンセルして、これを実行しようとします。

147
00:10:54,010 --> 00:11:00,400
&nbsp;

148
00:11:00,390 --> 00:11:03,780
これを除いてすべてがコメントアウトされていることを確認してください。

149
00:11:03,970 --> 00:11:05,230
走りましょう。

150
00:11:06,350 --> 00:11:06,940
そしてあなたは何を知っていますか？

151
00:11:06,940 --> 00:11:07,610
出来た。

152
00:11:07,870 --> 00:11:12,610
だから、ユーザー名はgmailのドットコムでBob Belsherの電子メールボブです。

153
00:11:13,030 --> 00:11:15,730
しかし今、postは単なるオブジェクトIDの配列ではありません。

154
00:11:15,750 --> 00:11:18,570
それは実際にそこに完全なポストを持っています。

155
00:11:18,580 --> 00:11:19,460
両方とも。

156
00:11:19,650 --> 00:11:24,070
だから、あなたはコンテンツとタイトルの内容とタイトルを持っているかどうかを知ることができます。

157
00:11:24,120 --> 00:11:29,360
したがって、私たちが行ったすべてを要約すると、ここにはオブジェクトIDを持つデータが格納されます。

158
00:11:29,470 --> 00:11:37,710
2つのオブジェクトのIDを確認してから、データを取得するために2番目のクエリを作成し、そのデータをすべてのデータに埋め込みました。

159
00:11:38,080 --> 00:11:43,870
&nbsp;

160
00:11:44,050 --> 00:11:47,690
だから、あなたはなぜ私たちが相手を使うのか不思議に思うかもしれません。

161
00:11:47,710 --> 00:11:52,220
いつデータを埋め込むのか、オブジェクトID参照をいつ使うのか。

162
00:11:52,210 --> 00:11:56,530
そして、私たちのキャンプの代わりにそれらを使用するとき、本当に重要で本当に重要な質問です。

163
00:11:56,800 --> 00:11:57,570
&nbsp;

164
00:11:57,730 --> 00:12:00,490
短い答えはそれが依存するということです。

165
00:12:00,490 --> 00:12:04,510
そして、あなたはどちらかのスタイルとほぼすべての状況を使って得ることができます。

166
00:12:04,500 --> 00:12:09,820
&nbsp;

167
00:12:09,850 --> 00:12:14,500
&nbsp;

168
00:12:14,500 --> 00:12:19,670
しかし、通常、参照や埋め込みデータを使用して、自分が行っていることにもっと役立つだろう。私たちがあなたのキャンプを通過するときに話し合い、コメントとユーザーを追加し始め、評価と写真、これらのすべての異なる機能が含まれています。

169
00:12:19,720 --> 00:12:22,750
それらのいくつかは埋め込まれる予定であり、そのうちのいくつかは参照される予定です
