1
00:00:03,950 --> 00:00:09,370
Dans cet exercice, nous allons continuer avec l'exercice précédent où nous avons

2
00:00:09,370 --> 00:00:14,650
développé l'interaction entre l'application de nœud et le serveur MongoDB.

3
00:00:14,650 --> 00:00:18,120
Dans cet exercice, je vais encapsuler quelques-unes des

4
00:00:18,120 --> 00:00:21,750
opérations de base de données dans un module de noeud propre,

5
00:00:21,750 --> 00:00:23,540
un module de noeud basé sur des fichiers,

6
00:00:23,540 --> 00:00:29,345
puis l'utiliser dans mon application de noeud afin d'interagir avec le serveur.

7
00:00:29,345 --> 00:00:31,940
Dans le même temps, nous allons effectuer plusieurs opérations sur

8
00:00:31,940 --> 00:00:35,630
le serveur pour démontrer que nous serons en mesure d'

9
00:00:35,630 --> 00:00:43,040
interagir avec le serveur en utilisant notre application de noeud et le pilote MongoDB de noeud.

10
00:00:43,040 --> 00:00:47,605
Pour commencer, passons à notre projet,

11
00:00:47,605 --> 00:00:53,975
puis créons un nouveau fichier nommé operations.js.

12
00:00:53,975 --> 00:00:57,720
Ce fichier encapsulera toutes les opérations de base de données,

13
00:00:57,720 --> 00:01:00,705
les quatre opérations que je vais effectuer insérer,

14
00:01:00,705 --> 00:01:05,855
trouver, supprimer et mettre à jour un document dans ma base de données.

15
00:01:05,855 --> 00:01:09,980
Maintenant, cela sera organisé comme un module de nœud basé sur des fichiers,

16
00:01:09,980 --> 00:01:15,070
que je vais ensuite utiliser dans mon application de nœud pour accéder au serveur.

17
00:01:15,070 --> 00:01:16,330
Donc, pour commencer,

18
00:01:16,330 --> 00:01:25,780
laissez-moi d'abord exiger affirmation,

19
00:01:25,780 --> 00:01:27,565
dans ce module de noeud,

20
00:01:27,565 --> 00:01:30,225
et comme il se trouve être un module de noeud,

21
00:01:30,225 --> 00:01:35,055
nous allons exporter plusieurs méthodes à partir du module de noeud.

22
00:01:35,055 --> 00:01:41,705
La première méthode serait d'insérer un document évidemment comme vous vous y attendez,

23
00:01:41,705 --> 00:01:44,520
et cela prendra quatre paramètres DB,

24
00:01:44,520 --> 00:01:49,555
le MongoDB, connexion de base de données dans mon application de nœud,

25
00:01:49,555 --> 00:01:54,240
que je vais obtenir dans l'application de nœud.

26
00:01:54,240 --> 00:01:57,785
Ensuite, le second est le document que je veux insérer.

27
00:01:57,785 --> 00:02:02,800
Le troisième paramètre est la collection dans laquelle je veux insérer le document.

28
00:02:02,800 --> 00:02:05,675
Le dernier est une fonction de rappel,

29
00:02:05,675 --> 00:02:10,425
qui sera rappelé une fois cette opération terminée.

30
00:02:10,425 --> 00:02:14,800
Ensuite, fermons la fonction ici,

31
00:02:14,800 --> 00:02:20,100
et cela encapsule essentiellement la méthode d'insertion de document ici.

32
00:02:20,100 --> 00:02:27,415
Donc, c'est une fonction qui est exportée par ce module de noeud ici.

33
00:02:27,415 --> 00:02:34,250
Maintenant, je vais aussi incorporer quelques méthodes supplémentaires ici.

34
00:02:34,250 --> 00:02:42,870
Le second serait de trouver des documents.

35
00:02:42,870 --> 00:02:46,025
Pas seulement un mais plusieurs documents.

36
00:02:46,025 --> 00:02:54,390
Cela je voudrais chercher dans la collection et trouver tous les documents qui sont dans la collection.

37
00:02:54,390 --> 00:02:58,130
Donc, c'est pourquoi je ne prends que la base de données

38
00:02:58,130 --> 00:03:02,090
et la collection comme les deux paramètres avec le rappel.

39
00:03:02,090 --> 00:03:11,550
La troisième fonction que je vais implémenter une exportation à partir d'ici est le document removedocument.

40
00:03:12,290 --> 00:03:15,590
Cela prend en charge l'opération de suppression,

41
00:03:15,590 --> 00:03:19,855
et donc le nom du document prendra la base de données,

42
00:03:19,855 --> 00:03:23,775
le document, la collection et le rappel comme les quatre paramètres,

43
00:03:23,775 --> 00:03:30,595
et nous appellerons le rappel lorsque l'opération est terminée.

44
00:03:30,595 --> 00:03:34,445
La dernière, bien sûr, est de mettre à jour le document.

45
00:03:34,445 --> 00:03:38,120
Bien sûr, vous n'avez pas nécessairement à le faire de cette façon.

46
00:03:38,120 --> 00:03:42,830
Je pensais juste que ce serait une autre façon d'illustrer comment vous pouvez

47
00:03:42,830 --> 00:03:49,110
encapsuler ces fonctions dans son propre module de nœud.

48
00:03:49,110 --> 00:03:55,395
Il s'agit simplement de réorganiser le code d'une manière plus facile à utiliser.

49
00:03:55,395 --> 00:03:57,205
Donc, pour les exportations,

50
00:03:57,205 --> 00:04:00,070
pour le document de mise à jour, il prend la base de données,

51
00:04:00,070 --> 00:04:03,750
une façon d'identifier le document comme un second paramètre.

52
00:04:03,750 --> 00:04:06,205
Le troisième paramètre est la mise à jour,

53
00:04:06,205 --> 00:04:08,750
et le quatrième paramètre est la collection dans laquelle

54
00:04:08,750 --> 00:04:11,505
ce document existe et le rappel.

55
00:04:11,505 --> 00:04:18,160
Ainsi, quatre fonctions à exporter par le fichier operations.js.

56
00:04:18,160 --> 00:04:20,380
Maintenant, au sein de ces fonctions,

57
00:04:20,380 --> 00:04:21,735
mettons en œuvre un par un.

58
00:04:21,735 --> 00:04:23,420
Dans le document d'insertion,

59
00:04:23,420 --> 00:04:27,680
la première chose que je vais faire est de dire la

60
00:04:27,680 --> 00:04:36,000
collection const et cela dira la collection DB,

61
00:04:38,930 --> 00:04:44,710
et le paramètre est la collection.

62
00:04:45,350 --> 00:04:50,190
Donc, nous allons chercher la collection là-bas.

63
00:04:50,190 --> 00:04:54,640
Maintenant, cela doit être effectué dans les quatre méthodes.

64
00:04:54,640 --> 00:04:59,990
Donc, je vais aller coller ce code dans les quatre méthodes ici,

65
00:05:01,140 --> 00:05:05,390
parce que c'est une fonction dont j'ai besoin dans chacune d'entre elles.

66
00:05:05,390 --> 00:05:07,820
Donc, une fois que je reçois la collection,

67
00:05:07,820 --> 00:05:11,680
alors comme vous vous souvenez de l'exercice précédent,

68
00:05:11,680 --> 00:05:13,895
je peux effectuer des opérations sur la collection.

69
00:05:13,895 --> 00:05:19,160
Donc, je vais dire collection, insert,

70
00:05:21,300 --> 00:05:27,610
et cela prend comme premier paramètre le document à insérer,

71
00:05:27,610 --> 00:05:35,695
et le deuxième paramètre est le rappel avec l'erreur et ce résultat.

72
00:05:35,695 --> 00:05:40,990
Donc, maintenant, lorsque ce document

73
00:05:40,990 --> 00:05:46,780
est inséré en appelant la méthode insert sur la collection de base de données,

74
00:05:46,780 --> 00:05:49,180
la méthode insert me permet de vous rappeler,

75
00:05:49,180 --> 00:05:52,090
est pris en charge par le pilote MongoDB.

76
00:05:52,090 --> 00:05:53,980
Donc, c'est la méthode que nous utilisons ici,

77
00:05:53,980 --> 00:05:56,420
ou c'est la fonction que nous utilisons ici.

78
00:05:56,420 --> 00:06:05,060
Maintenant, la première chose que je vais vérifier pour ça, erreur assertequal, null.

79
00:06:05,060 --> 00:06:09,185
Donc, je veux m'assurer que je n'ai pas d'erreur.

80
00:06:09,185 --> 00:06:11,225
Donc, je veux m'assurer que l'erreur est nulle.

81
00:06:11,225 --> 00:06:12,470
Si ce n'est pas nul,

82
00:06:12,470 --> 00:06:15,930
cela imprimera les informations, puis quittera l'application.

83
00:06:15,930 --> 00:06:19,760
En ce moment, je pense que c'est correct de gérer cela que plus tard,

84
00:06:19,760 --> 00:06:24,680
nous verrons comment nous pouvons avoir un moyen global de gérer toutes les erreurs lorsque nous

85
00:06:24,680 --> 00:06:34,390
implémentons dans la prochaine leçon une autre façon d'accéder à la base de données MongoDB.

86
00:06:34,390 --> 00:06:36,640
Maintenant, après que je l'ai fait,

87
00:06:36,640 --> 00:06:38,050
je vais mettre en œuvre,

88
00:06:38,050 --> 00:06:40,075
je vais simplement enregistrer cette information.

89
00:06:40,075 --> 00:06:48,570
Donc, je vais dire, consoles log et insérez-le.

90
00:06:48,570 --> 00:06:55,375
Donc, cette information sera imprimée à l'écran ici, insérée.

91
00:06:55,375 --> 00:07:00,440
Maintenant encore une fois, rappelez-vous les points-virgules et tout ce qui

92
00:07:00,440 --> 00:07:05,120
est important ne les oublie pas lorsque vous tapez votre code.

93
00:07:05,120 --> 00:07:07,930
Donc, je dirai résultat inséré.

94
00:07:07,930 --> 00:07:12,165
Cet objet de résultat qui est retourné

95
00:07:12,165 --> 00:07:15,785
aura une propriété appelée la propriété result,

96
00:07:15,785 --> 00:07:20,270
et cette propriété contiendra une valeur.

97
00:07:20,270 --> 00:07:23,600
Cette propriété de résultat est également un objet JavaScript,

98
00:07:23,600 --> 00:07:31,395
et cela contiendra une propriété n qui nous indique combien de documents ont été insérés.

99
00:07:31,395 --> 00:07:36,875
Donc c'est l'information que je vais imprimer ici,

100
00:07:36,875 --> 00:07:39,540
et ensuite nous allons passer à la ligne suivante et

101
00:07:39,540 --> 00:07:50,750
dire « documents dans la collection ».

102
00:07:53,070 --> 00:08:02,040
Maintenant, c'est juste un moyen d'informer l'utilisateur que cette opération s'est déroulée correctement,

103
00:08:02,040 --> 00:08:10,135
puis ils transmettront ce résultat à notre fonction d'appel.

104
00:08:10,135 --> 00:08:15,330
Donc, nous allons appeler le rappel, puis le résultat sera le paramètre du rappel.

105
00:08:15,330 --> 00:08:21,595
Donc, lorsque nous implémentons l'utilisation de cette fonction dans notre fichier index.js,

106
00:08:21,595 --> 00:08:23,930
nous fournirons le rappel là qui

107
00:08:23,930 --> 00:08:26,880
recevra le résultat comme paramètre entrant.

108
00:08:26,880 --> 00:08:30,670
Donc, c'est pour le « InsertDocument ».

109
00:08:30,670 --> 00:08:33,010
Maintenant, pour le « FindDocument

110
00:08:33,010 --> 00:08:36,750
», ce que je vais faire est de dire,

111
00:08:37,010 --> 00:08:41,640
« coll.find » et je vais trouver tous les documents.

112
00:08:41,640 --> 00:08:44,810
Donc, c'est pourquoi je vais donner un objet JavaScript vide ici,

113
00:08:44,810 --> 00:08:51,040
qui correspondra à tous les documents de la collection et ensuite je dirai,

114
00:08:51,040 --> 00:09:01,820
« toArray » et cela prendra comme paramètre une fonction de rappel,

115
00:09:02,220 --> 00:09:06,505
et à l'intérieur de cette fonction de rappel, bien sûr,

116
00:09:06,505 --> 00:09:11,710
j'affirmerai que ce n'est pas nul,

117
00:09:11,710 --> 00:09:20,590
et ensuite nous dirons, « callback docs. »

118
00:09:20,590 --> 00:09:27,440
Nous remettrons simplement les documents récupérés à la fonction d'appel.

119
00:09:28,200 --> 00:09:37,750
Maintenant, pour le « RemoveDocument », je vais dire, « collection DeleteOne ».

120
00:09:37,750 --> 00:09:40,270
Donc, je vais essayer de trouver le premier document qui

121
00:09:40,270 --> 00:09:45,130
correspond à ce que nous avons spécifié, puis le supprimer.

122
00:09:45,130 --> 00:09:47,070
Et puis cela prendra, encore une fois,

123
00:09:47,070 --> 00:09:50,380
une fonction de rappel comme deuxième paramètre,

124
00:09:50,380 --> 00:09:52,685
et à l'intérieur de cette fonction de rappel,

125
00:09:52,685 --> 00:09:58,160
la première chose que je vérifie est de m'assurer que l'erreur n'est pas nulle.

126
00:09:58,160 --> 00:10:01,820
Et puis après cela, nous dirons,

127
00:10:02,130 --> 00:10:20,890
« le journal de la console a supprimé le document virgule. »

128
00:10:20,890 --> 00:10:24,840
Nous avons utilisé la virgule ici parce que c'est un objet JavaScript donc,

129
00:10:24,840 --> 00:10:26,890
si vous spécifiez le journal de

130
00:10:26,890 --> 00:10:30,360
la console comme celui-ci, le document sera imprimé et ensuite nous allons passer

131
00:10:30,360 --> 00:10:36,705
ce résultat à travers la fonction de rappel.

132
00:10:36,705 --> 00:10:47,550
Et puis enfin, pour la mise à jour, nous allons coll.UpdateOne.

133
00:10:47,670 --> 00:10:52,255
C' est une méthode prise en charge par le pilote MongoDB.

134
00:10:52,255 --> 00:10:56,560
Donc, je vais dire, « Update.One document

135
00:10:56,560 --> 00:11:01,480
», et le deuxième paramètre est où nous

136
00:11:01,480 --> 00:11:06,960
allons passer dans les champs qui doivent être mis à jour.

137
00:11:06,960 --> 00:11:08,915
Et la façon dont ça se fait,

138
00:11:08,915 --> 00:11:12,810
nous dirons, « mise à jour du deux-points ».

139
00:11:12,810 --> 00:11:16,100
Donc, cela prendra les informations de mise à jour que

140
00:11:16,100 --> 00:11:19,120
j'envoie et ensuite les passer dans le update.one.

141
00:11:19,120 --> 00:11:21,620
Le premier est le document qui doit être mis à jour.

142
00:11:21,620 --> 00:11:25,425
Le second est les champs du document qui doivent être mis à jour ici.

143
00:11:25,425 --> 00:11:28,660
Et le troisième paramètre est nul,

144
00:11:28,770 --> 00:11:36,305
et ce dernier paramètre est une fonction de rappel,

145
00:11:36,305 --> 00:11:45,660
ce qui nous donnera évidemment le résultat de l'opération.

146
00:11:45,660 --> 00:11:51,125
Donc, la première chose que je vais vérifier pour m'assurer que l'erreur n'est pas nulle.

147
00:11:51,125 --> 00:11:59,535
Ensuite, je vais faire un « journal de console mis à jour le document avec ».

148
00:11:59,535 --> 00:12:03,195
Maintenant encore une fois, les journaux de la console sont purement pour nous de nous

149
00:12:03,195 --> 00:12:07,920
assurer que le code fait ce qu'il fait.

150
00:12:07,920 --> 00:12:09,690
Ça n'aide en rien.

151
00:12:09,690 --> 00:12:11,995
C' est juste pour notre propre information.

152
00:12:11,995 --> 00:12:15,070
Dans un serveur de production,

153
00:12:15,070 --> 00:12:18,570
vous n'auriez pas ces journaux de console, peut-être.

154
00:12:18,570 --> 00:12:24,220
Vous pouvez les désactiver. Alors, c'est tout.

155
00:12:24,220 --> 00:12:32,370
Donc, quatre méthodes étant prises en charge dans ce module de nœud basé sur un fichier particulier insérer,

156
00:12:32,370 --> 00:12:35,040
trouver, supprimer et mettre à jour.

157
00:12:35,040 --> 00:12:38,490
Donc, maintenant que nous avons implémenté ce module de noeud basé sur des fichiers,

158
00:12:38,490 --> 00:12:41,185
allons au fichier index.js,

159
00:12:41,185 --> 00:12:45,985
puis pour utiliser ce module de noeud basé sur des fichiers,

160
00:12:45,985 --> 00:12:48,010
je dois exiger ceci ici.

161
00:12:48,010 --> 00:12:53,969
Donc, je vais dire, « Const dboper requièrent. »

162
00:12:53,969 --> 00:13:00,155
Comme il s'agit d'un module de nœud basé sur un fichier, vous obtenez le chemin complet du module de nœud,

163
00:13:00,155 --> 00:13:03,865
et qui dans ce cas se trouve être. /opérations

164
00:13:03,865 --> 00:13:09,760
car il se trouve dans le même dossier que mon fichier index.js.

165
00:13:09,760 --> 00:13:12,400
Maintenant, une fois que nous avons fait cela,

166
00:13:12,400 --> 00:13:19,570
puis ici, cette fonction,

167
00:13:19,570 --> 00:13:24,355
ce code que nous faisions pour accéder à la base de données maintenant insérer,

168
00:13:24,355 --> 00:13:32,430
nous allons utiliser le dboper que nous venons d'implémenter pour accéder à cette base de données.

169
00:13:32,430 --> 00:13:36,280
Donc, nous allons dire, « dboper insert document

170
00:13:36,280 --> 00:13:40,345
», et ce « insert document » prend le db comme premier paramètre.

171
00:13:40,345 --> 00:13:45,015
La base de données ici, est cette base de données qui est entrée lorsque nous appelons MongoClient connect.

172
00:13:45,015 --> 00:13:48,010
Donc, cette base de données sera transmise, donc de cette façon,

173
00:13:48,010 --> 00:13:53,805
mon module de nœud d'opérations sait où accéder à la base de données.

174
00:13:53,805 --> 00:13:59,325
Ensuite, le deuxième paramètre est le,

175
00:13:59,325 --> 00:14:03,950
donc si vous regardez le « insert document », vous verrez

176
00:14:03,950 --> 00:14:08,055
que le second paramètre est le document à insérer.

177
00:14:08,055 --> 00:14:10,850
Donc, je vais dire, « nom. «

178
00:14:11,640 --> 00:14:21,680
Je vais juste construire un objet JSON ou un objet JavaScript ici,

179
00:14:21,680 --> 00:14:27,315
qui sera automatiquement mappé dans l'objet adjacent lorsqu'il est inséré.

180
00:14:27,315 --> 00:14:30,135
Et le troisième paramètre, comme vous le voyez,

181
00:14:30,135 --> 00:14:32,790
« collection de documents db et rappel. »

182
00:14:32,790 --> 00:14:36,690
Donc, le troisième paramètre est la collection et la collection est

183
00:14:36,690 --> 00:14:42,855
la collection vaisselle et le dernier est le rappel.

184
00:14:42,855 --> 00:14:48,605
Le rappel à nouveau comme vous vous souvenez reçoit le résultat.

185
00:14:48,605 --> 00:14:52,710
Si vous regardez en arrière le bébé implémenté le document d'insertion,

186
00:14:52,710 --> 00:14:55,245
le rappel a reçu le résultat en tant que paramètre.

187
00:14:55,245 --> 00:15:00,305
Donc, à l'intérieur de ce rappel, nous allons gérer cette valeur de résultat ici.

188
00:15:00,305 --> 00:15:07,000
Donc, lorsque la valeur de résultat arrive, nous allons faire un console.log.

189
00:15:07,390 --> 00:15:12,750
Nous dirons insérer la

190
00:15:13,240 --> 00:15:20,565
barre oblique inverse N et nous dirons résultat OPS.

191
00:15:20,565 --> 00:15:24,760
L' OPS indique le nombre d'opérations d'insertion effectuées.

192
00:15:24,760 --> 00:15:28,680
Donc, c'est un autre objet qui va être sur l'

193
00:15:28,680 --> 00:15:31,790
objet JavaScript résultat qui est transmis en tant que

194
00:15:31,790 --> 00:15:34,650
paramètre et donc je vais juste imprimer cette valeur.

195
00:15:34,650 --> 00:15:38,260
Ça nous donnera des informations sur ce qui s'est passé.

196
00:15:38,260 --> 00:15:40,610
Maintenant, une fois cela terminé,

197
00:15:40,610 --> 00:15:45,880
à l'intérieur de cette fonction de rappel, je vais appeler l'opération de base de données suivante.

198
00:15:45,880 --> 00:15:50,730
Donc je vais dire dboper et ensuite trouver les documents.

199
00:15:50,730 --> 00:16:00,260
Ensuite, je dirai dbplats et le troisième paramètre est docs,

200
00:16:00,260 --> 00:16:03,090
qui est la fonction de rappel.

201
00:16:03,090 --> 00:16:06,100
Lorsque je reçois les documents, je vais faire un

202
00:16:06,100 --> 00:16:15,170
console.log disant que les documents trouvés,

203
00:16:16,170 --> 00:16:22,140
et nous allons simplement verrouiller les documents à l'écran.

204
00:16:22,140 --> 00:16:25,075
Donc, cela imprimera les documents trouvés.

205
00:16:25,075 --> 00:16:28,470
Notez que cet appel est à l'intérieur de

206
00:16:28,470 --> 00:16:37,480
la fonction de rappel qui est appliquée pour l'appel de fonction précédent,

207
00:16:37,480 --> 00:16:41,225
donc c'est quelque chose que je veux que vous remarquiez spécifiquement.

208
00:16:41,225 --> 00:16:46,290
Maintenant, encore une fois dans cet appel de fonction, ils doivent le faire de cette façon parce que tant que

209
00:16:46,290 --> 00:16:52,185
ce rappel n'est pas appelé, nous ne pouvons pas faire l'opération suivante.

210
00:16:52,185 --> 00:16:58,855
Donc, dans cette prochaine opération, je vais mettre à jour le document que je viens d'insérer.

211
00:16:58,855 --> 00:17:03,990
Donc, je vais dire mettre à jour le document et je dirai Update Document DB,

212
00:17:03,990 --> 00:17:07,880
puis le paramètre suivant est le document

213
00:17:07,880 --> 00:17:11,800
et je n'ai pas besoin de spécifier le document entier, je ne peux spécifier qu'un seul champ et

214
00:17:11,800 --> 00:17:20,740
puis cela trouvera le document qui correspond à ce champ particulier.

215
00:17:21,960 --> 00:17:27,690
Ce que je vais faire est le paramètre suivant est la mise à jour qui doit être fournie.

216
00:17:27,690 --> 00:17:30,770
Donc, la mise à jour est le champ que je veux mettre à jour,

217
00:17:30,770 --> 00:17:35,350
donc je vais mettre à jour

218
00:17:35,350 --> 00:17:42,050
le champ de description en disant Update

219
00:17:43,030 --> 00:17:48,475
Test, puis le quatrième est la collection qui est Discs,

220
00:17:48,475 --> 00:17:53,820
et le dernier est la fonction de rappel qui obtient

221
00:17:53,820 --> 00:18:01,110
les docs comme valeur de retour ou

222
00:18:01,110 --> 00:18:08,705
plutôt résultat de l'opération de mise à jour que nous venons d'effectuer.

223
00:18:08,705 --> 00:18:11,890
Ensuite, à l'intérieur de cette fonction de rappel,

224
00:18:11,890 --> 00:18:20,845
je vais à nouveau faire une barre

225
00:18:20,845 --> 00:18:31,050
oblique inverse du document mise à jour N. Le document mis à jour sera transmis

226
00:18:31,050 --> 00:18:38,125
dans result.result sur

227
00:18:38,125 --> 00:18:43,115
cette propriété de l'objet résultat qui est passé le suivi. console.log

228
00:18:43,115 --> 00:18:49,044
Notez encore une fois comment les appels sont imbriqués

229
00:18:49,044 --> 00:18:54,585
dans les fonctions de rappel ici.

230
00:18:54,585 --> 00:18:57,880
Je veux que vous remarquiez cette structure du code

231
00:18:57,880 --> 00:19:03,130
spécifiquement parce que c'est ce à quoi je vais revenir dans le prochain exercice.

232
00:19:03,130 --> 00:19:05,760
Maintenant, après que

233
00:19:05,760 --> 00:19:07,529
je l'ai fait, je vais trouver les documents,

234
00:19:07,529 --> 00:19:12,930
alors laissez-moi juste le copier et ensuite je vais utiliser le même code ici.

235
00:19:13,840 --> 00:19:19,530
Donc, je vais dire, trouver des documents.

236
00:19:20,000 --> 00:19:27,695
À l'intérieur ici, je vais à nouveau dire, trouvé document mis à jour.

237
00:19:27,695 --> 00:19:30,375
Puis enfin quand j'en ai fini avec cela,

238
00:19:30,375 --> 00:19:35,855
j'appellerai simplement db drop collection.

239
00:19:35,855 --> 00:19:38,760
Donc, je vais supprimer cette collection de plats afin que je

240
00:19:38,760 --> 00:19:41,630
nettoie ma base de données afin que je n'ai

241
00:19:41,630 --> 00:19:44,350
rien de plus car pour le prochain exercice, je veux nettoyer

242
00:19:44,350 --> 00:19:47,230
la base de données, puis commencer avec une base de données plus propre.

243
00:19:47,230 --> 00:19:48,835
Donc, je vais nettoyer

244
00:19:48,835 --> 00:19:57,770
la collection de vaisselle et cela entraînerait un rappel.

245
00:19:59,110 --> 00:20:07,410
Donc, à l'intérieur ici, je vais faire un console.log disant,

246
00:20:07,410 --> 00:20:17,000
collection abandonnée, et puis je vais juste imprimer le résultat qui est arrivé.

247
00:20:17,820 --> 00:20:25,250
Puis, enfin, fermez la base de données.

248
00:20:25,650 --> 00:20:28,895
Notez que la structure du code,

249
00:20:28,895 --> 00:20:34,580
DB insert document et à l'intérieur de la fonction de rappel, je vais appeler

250
00:20:34,580 --> 00:20:37,690
la fonction suivante et à

251
00:20:37,690 --> 00:20:39,660
l'intérieur du rappel off que je vais appeler

252
00:20:39,660 --> 00:20:42,270
la fonction suivante et à l'intérieur de la fonction suivante de rappel et ainsi de suite.

253
00:20:42,270 --> 00:20:46,990
Donc, vous voyez un ensemble imbriqué de rappels ici et

254
00:20:46,990 --> 00:20:52,665
un ensemble de rappels imbriqués structurés en arborescence ici.

255
00:20:52,665 --> 00:20:56,505
C' est quelque chose que je veux que vous fassiez attention.

256
00:20:56,505 --> 00:21:02,680
Sauvegardons les modifications et allons regarder cette version de notre application.

257
00:21:02,680 --> 00:21:04,725
Pour revenir au terminal,

258
00:21:04,725 --> 00:21:08,045
laissez-moi exécuter l'application.

259
00:21:08,045 --> 00:21:13,035
Alors laissez-moi taper NPM start et nous verrons ce résultat.

260
00:21:13,035 --> 00:21:19,060
Maintenant, à partir de ce résultat, vous pouvez voir que le document est inséré

261
00:21:19,060 --> 00:21:25,330
dans la collection et c'est le document qui a été trouvé.

262
00:21:25,330 --> 00:21:26,990
Dans la deuxième étape,

263
00:21:26,990 --> 00:21:31,540
nous trouvons le document donc lorsque nous appelons le document de recherche DB,

264
00:21:31,540 --> 00:21:36,175
donc c'est le document qui est récupéré de ma collection.

265
00:21:36,175 --> 00:21:39,010
Ensuite, je lui demande de mettre à jour le document avec

266
00:21:39,010 --> 00:21:42,915
ceci et puis vous remarquerez qu'il dit document mis à jour et puis

267
00:21:42,915 --> 00:21:46,850
ici il imprime le résultat ou OPS et il dit N est égal à

268
00:21:46,850 --> 00:21:51,775
un nombre modifié comme un et c'était correct.

269
00:21:51,775 --> 00:21:57,010
Ensuite, il imprime le document mis à jour,

270
00:21:57,010 --> 00:22:02,020
nous trouvons le document mis à jour ici et c'est ce qui est imprimé ici,

271
00:22:02,020 --> 00:22:05,770
et notez en particulier que la description a été mise à jour.

272
00:22:05,770 --> 00:22:09,390
Puis finalement, il a laissé tomber la collection.

273
00:22:09,990 --> 00:22:16,690
Donc, nous voyons comment cette application s'exécute et est capable de faire usage

274
00:22:16,690 --> 00:22:23,410
du module de nœud que nous avons implémenté et ensuite effectué diverses opérations de base de données.

275
00:22:23,410 --> 00:22:26,560
Avec cela, nous complétons cet exercice.

276
00:22:26,560 --> 00:22:31,520
Dans cet exercice, je vous ai montré comment vous interageriez avec

277
00:22:31,520 --> 00:22:37,085
votre serveur MongoDB à partir de votre application de nœud.

278
00:22:37,085 --> 00:22:43,455
Nous avons implémenté notre propre module de noeud ici et l'avons ensuite utilisé

279
00:22:43,455 --> 00:22:46,810
dans notre application de noeud en encapsulant

280
00:22:46,810 --> 00:22:50,965
certaines des opérations de base de données dans ce module de noeud.

281
00:22:50,965 --> 00:22:54,020
C' est le bon moment pour vous de faire un commit Git avec

282
00:22:54,020 --> 00:22:58,860
le nœud de message MongoDB exemple deuxième partie.