﻿1
00:00:01,220 --> 00:00:03,030
‫Narrateur : Améliorons maintenant l'implémentation

2
00:00:03,030 --> 00:00:06,620
‫des routes imbriquées que nous avons codées dans la dernière leçon.

3
00:00:06,620 --> 00:00:07,500
‫Et pour

4
00:00:07,500 --> 00:00:11,213
‫cela, nous allons utiliser une fonction express avancée spéciale.

5
00:00:12,840 --> 00:00:15,070
‫Donc, comme vous vous en

6
00:00:15,070 --> 00:00:18,920
‫souvenez, dans la dernière vidéo, nous avons implémenté un simple

7
00:00:18,920 --> 00:00:21,860
‫itinéraire de poste imbriqué, donc juste celui-ci ici.

8
00:00:21,860 --> 00:00:25,240
‫Droit. Cela signifie donc que l'itinéraire d'examen

9
00:00:25,240 --> 00:00:27,590
‫est en quelque sorte dans l'itinéraire de la tournée.

10
00:00:27,590 --> 00:00:32,130
‫Et encore, parce que les critiques appartiennent en quelque sorte aux tournées.

11
00:00:32,130 --> 00:00:32,963
‫Droit?

12
00:00:32,963 --> 00:00:36,920
‫C'est donc une chose très courante à faire dans la conception d'Api.

13
00:00:36,920 --> 00:00:39,950
‫Maintenant, le problème avec cette implémentation est qu'elle est,

14
00:00:39,950 --> 00:00:41,800
‫bien sûr, un peu brouillonne.

15
00:00:41,800 --> 00:00:45,420
‫Et c'est parce que nous avons mis un itinéraire pour créer un avis

16
00:00:45,420 --> 00:00:47,090
‫dans le routeur de tournée.

17
00:00:47,090 --> 00:00:50,430
‫Tout simplement parce qu'un itinéraire commence par un slash tour.

18
00:00:50,430 --> 00:00:51,950
‫C'est donc un peu

19
00:00:51,950 --> 00:00:53,500
‫déroutant, et ce qui est

20
00:00:53,500 --> 00:00:56,480
‫également déroutant, c'est que nous avons quelque chose de très

21
00:00:56,480 --> 00:00:59,160
‫similaire à cela ici, également dans notre itinéraire d'examen.

22
00:00:59,160 --> 00:01:01,203
‫Donc, fondamentalement ceci ici.

23
00:01:01,203 --> 00:01:04,840
‫Ainsi, lorsque nous créons une nouvelle revue sans la route imbriquée,

24
00:01:04,840 --> 00:01:08,450
‫ce morceau de code ici est en fait exactement le même

25
00:01:08,450 --> 00:01:10,600
‫que celui-ci. Droit?

26
00:01:10,600 --> 00:01:12,940
‫Et donc, en plus d'être un peu déroutant,

27
00:01:12,940 --> 00:01:16,020
‫nous avons également du code en double que nous devrions conserver

28
00:01:16,020 --> 00:01:19,910
‫à deux endroits distincts au cas où nous voudrions changer quoi que ce soit.

29
00:01:19,910 --> 00:01:23,120
‫Et encore une fois, c'est une très mauvaise pratique.

30
00:01:23,120 --> 00:01:26,600
‫Et donc corrigeons maintenant ce problème à l'aide d'une fonctionnalité

31
00:01:26,600 --> 00:01:28,410
‫express avancée appelée mergeParams.

32
00:01:28,410 --> 00:01:31,270
‫Alors tout d'abord supprimons ici ce

33
00:01:31,270 --> 00:01:34,690
‫code qui n'appartient pas vraiment au routeur de tournée.

34
00:01:34,690 --> 00:01:38,500
‫Ensuite, nous importerons réellement le routeur d'examen dans

35
00:01:38,500 --> 00:01:40,840
‫ce routeur de tournée.

36
00:01:40,840 --> 00:01:41,740
‫D'accord?

37
00:01:41,740 --> 00:01:44,460
‫Donc, en ce moment, nous importons le contrôleur de

38
00:01:44,460 --> 00:01:47,330
‫révision, mais en fait, nous voulons le routeur de révision.

39
00:01:47,330 --> 00:01:49,220
‫Alors débarrassons-nous de celui-ci,

40
00:01:49,220 --> 00:01:51,963
‫et en fait je vais le supprimer complètement.

41
00:01:53,090 --> 00:01:53,923
‫Et

42
00:01:54,960 --> 00:01:55,880
‫maintenant, le

43
00:01:57,070 --> 00:01:57,923
‫routeur d'examen.

44
00:02:05,500 --> 00:02:06,333
‫Et bien.

45
00:02:07,410 --> 00:02:12,100
‫Alors, prenons ce code et mettons-le ici en haut, juste pour

46
00:02:12,100 --> 00:02:13,480
‫que nous

47
00:02:13,480 --> 00:02:15,903
‫voyions ce que nous faisons, car

48
00:02:17,140 --> 00:02:19,730
‫nous allons en fait créer un

49
00:02:19,730 --> 00:02:21,620
‫nouveau code ici en haut.

50
00:02:21,620 --> 00:02:23,560
‫Et donc ce que nous allons

51
00:02:23,560 --> 00:02:24,393
‫faire ici,

52
00:02:26,781 --> 00:02:29,270
‫c'est dire routeur. utilisation.

53
00:02:29,270 --> 00:02:32,060
‫Et donc, nous dirons essentiellement que ce routeur de

54
00:02:32,060 --> 00:02:33,890
‫tournée doit utiliser le routeur

55
00:02:33,890 --> 00:02:37,373
‫de révision au cas où il rencontrerait un itinéraire comme celui-ci.

56
00:02:43,070 --> 00:02:43,903
‫Et

57
00:02:46,440 --> 00:02:48,670
‫revoir les itinéraires.

58
00:02:48,670 --> 00:02:50,600
‫Est-ce que je l'ai appelé routes ou routeur ?

59
00:02:50,600 --> 00:02:52,083
‫Devrait être appelé routeur.

60
00:02:53,630 --> 00:02:54,463
‫D'accord?

61
00:02:55,690 --> 00:02:58,010
‫Donc, gardez à l'esprit qu'un routeur lui-même

62
00:02:58,010 --> 00:02:59,730
‫n'est en réalité qu'un middleware.

63
00:02:59,730 --> 00:03:02,580
‫Et donc nous pouvons utiliser la méthode use dessus,

64
00:03:02,580 --> 00:03:05,200
‫puis dire que pour cet itinéraire spécifique ici,

65
00:03:05,200 --> 00:03:08,210
‫nous voulons utiliser le routeur de révision à la place.

66
00:03:08,210 --> 00:03:09,043
‫D'accord?

67
00:03:09,043 --> 00:03:11,890
‫Et c'est donc à nouveau le montage d'un routeur.

68
00:03:11,890 --> 00:03:14,300
‫Donc, si vous jetez un œil à cela, ici

69
00:03:14,300 --> 00:03:15,870
‫dans l'application. js, c'est

70
00:03:15,870 --> 00:03:18,140
‫en fait exactement ce que nous avons fait.

71
00:03:18,140 --> 00:03:20,410
‫Alors nous l'avons fait. utiliser,

72
00:03:20,410 --> 00:03:22,090
‫puis l'URL, puis

73
00:03:22,090 --> 00:03:23,430
‫le routeur.

74
00:03:23,430 --> 00:03:25,040
‫Et donc ici, ce que

75
00:03:25,040 --> 00:03:27,340
‫nous faisons est en fait exactement la même chose.

76
00:03:27,340 --> 00:03:30,360
‫C'est donc le routeur de tournée, et donc nous disons

77
00:03:30,360 --> 00:03:33,250
‫bien chaque fois que vous trouvez une URL comme

78
00:03:33,250 --> 00:03:36,010
‫celle-ci, eh bien, utilisez simplement le routeur d'examen.

79
00:03:36,010 --> 00:03:40,010
‫Et donc, en ce moment, quand nous avons une URL comme celle-ci,

80
00:03:40,010 --> 00:03:44,700
‫elle commencera par entrer dans le routeur de tournée ici, d'accord, parce que, encore

81
00:03:44,700 --> 00:03:47,963
‫une fois, cela commence par des visites à barre oblique,

82
00:03:48,920 --> 00:03:49,753
‫d'accord, donc

83
00:03:49,753 --> 00:03:52,920
‫en gros, elle est redirigée vers le routeur de

84
00:03:52,920 --> 00:03:55,400
‫tournée, puis quand elle atteint le routeur

85
00:03:55,400 --> 00:03:57,800
‫de tournée, alors il correspondra à

86
00:03:57,800 --> 00:04:02,370
‫cette URL ici, puis il sera à nouveau redirigé vers le routeur de révision.

87
00:04:02,370 --> 00:04:04,300
‫Et comme ça, nous avons

88
00:04:04,300 --> 00:04:06,780
‫le routeur de tournée et le routeur

89
00:04:06,780 --> 00:04:09,300
‫d'examen bien séparés et découplés l'un de l'autre.

90
00:04:09,300 --> 00:04:12,370
‫Mais maintenant, il manque encore une pièce

91
00:04:12,370 --> 00:04:15,170
‫car pour le moment, ce routeur

92
00:04:15,170 --> 00:04:19,410
‫d'examen n'a pas accès à ce paramètre d'identifiant de tournée, d'accord.

93
00:04:19,410 --> 00:04:22,050
‫Et maintenant, nous devons permettre

94
00:04:22,050 --> 00:04:26,200
‫au routeur d'examen d'accéder également à ce paramètre ici.

95
00:04:26,200 --> 00:04:29,980
‫Passons maintenant au routeur d'examen, d'accord.

96
00:04:29,980 --> 00:04:32,180
‫Et c'est donc là qu'intervient le

97
00:04:33,264 --> 00:04:34,810
‫mergeParams médical que j'ai évoqué

98
00:04:34,810 --> 00:04:35,943
‫au début.

99
00:04:38,030 --> 00:04:40,790
‫Alors ici, dans l'express. router, nous pouvons spécifier

100
00:04:40,790 --> 00:04:43,010
‫certaines options, et ici tout ce que

101
00:04:43,010 --> 00:04:45,760
‫nous avons à faire est de définir mergeParams

102
00:04:48,160 --> 00:04:49,170
‫sur true.

103
00:04:49,170 --> 00:04:50,440
‫Et c'est tout.

104
00:04:50,440 --> 00:04:53,750
‫Mais pourquoi en avons-nous vraiment besoin ici ?

105
00:04:53,750 --> 00:04:55,780
‫Eh bien, c'est parce

106
00:04:55,780 --> 00:04:57,850
‫que, par défaut, chaque routeur

107
00:04:57,850 --> 00:05:01,780
‫n'a accès qu'aux paramètres de ses routes spécifiques, n'est-ce pas.

108
00:05:01,780 --> 00:05:06,720
‫Mais ici, dans cet itinéraire, donc dans cette URL pour cet article, il

109
00:05:06,720 --> 00:05:09,930
‫n'y a bien sûr pas d'identifiant de tournée.

110
00:05:09,930 --> 00:05:12,630
‫Mais, nous voulons toujours avoir accès à l'identifiant

111
00:05:12,630 --> 00:05:16,050
‫de tournée qui se trouvait dans cet autre routeur, n'est-ce pas.

112
00:05:16,050 --> 00:05:17,430
‫Alors ça ici.

113
00:05:17,430 --> 00:05:20,420
‫Et donc, afin d'avoir accès à ce

114
00:05:20,420 --> 00:05:21,910
‫paramètre dans cet

115
00:05:21,910 --> 00:05:25,570
‫autre routeur, nous devons fusionner physiquement les paramètres, d'accord.

116
00:05:25,570 --> 00:05:29,270
‫Et c'est donc ce que fait mergeParams, défini sur true.

117
00:05:29,270 --> 00:05:32,663
‫Et maintenant, peu importe si nous obtenons un itinéraire comme celui-ci,

118
00:05:34,310 --> 00:05:36,853
‫alors copions-le ici. Encore une fois, il

119
00:05:38,270 --> 00:05:41,383
‫est plus facile de le visualiser avec un exemple.

120
00:05:42,280 --> 00:05:45,647
‫Et encore une fois, peu importe si nous obtenons un

121
00:05:48,380 --> 00:05:49,840
‫itinéraire comme celui-ci,

122
00:05:49,840 --> 00:05:54,530
‫ou un itinéraire comme celui-ci, tout se terminera maintenant dans ce gestionnaire ici, d'accord.

123
00:05:54,530 --> 00:05:58,130
‫Donc à la fin essentiellement à cette fonction de gestionnaire.

124
00:05:58,130 --> 00:06:01,060
‫Et encore une fois, cela fonctionne car

125
00:06:01,060 --> 00:06:03,710
‫toutes les routes commençant par ce

126
00:06:03,710 --> 00:06:06,720
‫type de modèle ici seront redirigées vers ce

127
00:06:06,720 --> 00:06:09,960
‫routeur exactement dans cette ligne de code ici, d'accord.

128
00:06:09,960 --> 00:06:13,220
‫Nous avons donc redirigé vers le routeur d'examen

129
00:06:13,220 --> 00:06:17,600
‫ici et donc là-bas, il correspondra à cet itinéraire exact,

130
00:06:17,600 --> 00:06:18,433
‫d'accord.

131
00:06:18,433 --> 00:06:19,990
‫Et grâce aux paramètres

132
00:06:19,990 --> 00:06:22,310
‫de fusion, nous obtenons alors accès à

133
00:06:22,310 --> 00:06:25,700
‫cet identifiant qui provient en fait de l'autre routeur avant.

134
00:06:25,700 --> 00:06:26,940
‫Super.

135
00:06:26,940 --> 00:06:28,843
‫Alors faisons juste un peu

136
00:06:29,870 --> 00:06:31,323
‫de nettoyage ici, débarrassons-nous

137
00:06:32,260 --> 00:06:33,143
‫en fait de

138
00:06:34,230 --> 00:06:35,063
‫ceci,

139
00:06:36,310 --> 00:06:38,560
‫de ceci ici, et essayons rapidement maintenant.

140
00:06:38,560 --> 00:06:40,940
‫Je vais donc créer une nouvelle critique ici et

141
00:06:42,100 --> 00:06:44,143
‫essayons un autre outil cette fois.

142
00:06:47,180 --> 00:06:48,533
‫Donc le vagabond de la ville.

143
00:06:51,160 --> 00:06:52,990
‫Et tout ce que nous

144
00:06:52,990 --> 00:06:57,030
‫devons faire est de changer cet identifiant ici même dans l'URL, à droite.

145
00:06:57,030 --> 00:07:00,250
‫Donc, la note va

146
00:07:00,250 --> 00:07:01,083
‫être

147
00:07:03,570 --> 00:07:07,190
‫de trois, et ça allait.

148
00:07:07,190 --> 00:07:10,943
‫Très bien, et donc cet examen sera toujours fait

149
00:07:11,960 --> 00:07:14,940
‫avec Jonas, donc à partir de ce

150
00:07:14,940 --> 00:07:16,300
‫compte, d'accord,

151
00:07:16,300 --> 00:07:20,890
‫car c'est toujours celui qui est connecté en ce moment, d'accord.

152
00:07:20,890 --> 00:07:21,963
‫Alors, envoyons cela,

153
00:07:23,160 --> 00:07:26,900
‫et en effet, nous obtenons ici la visite que nous venons de spécifier,

154
00:07:26,900 --> 00:07:28,383
‫et toujours le même utilisateur.

155
00:07:30,110 --> 00:07:34,710
‫C'est donc encore une fois juste pour vous assurer de vérifier la tournée

156
00:07:34,710 --> 00:07:37,110
‫pour voir si elle obtient maintenant cette

157
00:07:37,110 --> 00:07:39,500
‫critique et oui, elle l'a fait.

158
00:07:39,500 --> 00:07:42,710
‫Et donc, cette astuce des paramètres de fusion, que

159
00:07:42,710 --> 00:07:44,650
‫nous venons d'implémenter, fonctionne très

160
00:07:44,650 --> 00:07:46,280
‫bien et comme prévu.

161
00:07:46,280 --> 00:07:48,790
‫Maintenant, pour voir cela en action, encore mieux,

162
00:07:48,790 --> 00:07:50,560
‫nous allons adapter la fonction henry

163
00:07:50,560 --> 00:07:53,420
‫pour obtenir toutes les critiques d'une tournée spécifique directement dans

164
00:07:53,420 --> 00:07:54,793
‫la prochaine vidéo.

