﻿1
00:00:01,290 --> 00:00:02,850
‫Istruttore: Quindi, negli ultimi

2
00:00:02,850 --> 00:00:05,580
‫due video, abbiamo creato un endpoint POST

3
00:00:05,580 --> 00:00:08,910
‫annidato per creare nuove recensioni su un determinato tour.

4
00:00:08,910 --> 00:00:10,420
‫Quindi, ora costruiamo su

5
00:00:10,420 --> 00:00:13,113
‫questo e creiamo anche un endpoint GET nidificato.

6
00:00:14,860 --> 00:00:17,290
‫Quindi abbiamo già implementato la nostra

7
00:00:17,290 --> 00:00:19,570
‫funzione di gestione getAllReviews, giusto?

8
00:00:19,570 --> 00:00:22,940
‫Ma in questo momento, tutto ciò che fa è sostanzialmente ottenere

9
00:00:22,940 --> 00:00:26,040
‫una serie di tutte le recensioni nella raccolta di recensioni.

10
00:00:26,040 --> 00:00:29,020
‫Ora, un caso d'uso comune per la tua

11
00:00:29,020 --> 00:00:32,030
‫API potrebbe essere quello di ottenere una serie di

12
00:00:32,030 --> 00:00:34,500
‫tutte le recensioni di un particolare

13
00:00:34,500 --> 00:00:37,080
‫tour, quindi molto simile a createReview, giusto?

14
00:00:37,080 --> 00:00:39,750
‫Quindi sostanzialmente simile a questo percorso qui,

15
00:00:39,750 --> 00:00:41,840
‫ma tranne che con GET.

16
00:00:41,840 --> 00:00:46,590
‫Quindi, in pratica qualcosa del genere, ok?

17
00:00:46,590 --> 00:00:49,330
‫Quindi, tutto ciò che dobbiamo fare per

18
00:00:49,330 --> 00:00:51,640
‫implementare questo è apportare alcune

19
00:00:51,640 --> 00:00:54,880
‫semplici modifiche alla nostra funzione di gestione getAllReviews, giusto?

20
00:00:54,880 --> 00:00:57,760
‫Perché in questo momento, grazie ai parametri

21
00:00:57,760 --> 00:01:02,290
‫di unione e a questo tipo di reindirizzamento che abbiamo implementato qui

22
00:01:02,290 --> 00:01:05,510
‫nell'ultimo video, quindi grazie a tutto ciò, questa

23
00:01:05,510 --> 00:01:09,070
‫funzione del gestore getAllReviews verrà ora chiamata automaticamente ogni

24
00:01:09,070 --> 00:01:11,660
‫volta che c'è una richiesta GET

25
00:01:11,660 --> 00:01:14,020
‫per un URL che sembra

26
00:01:14,020 --> 00:01:17,060
‫in questo modo, e avrà anche accesso

27
00:01:17,060 --> 00:01:20,950
‫al tourId, e ancora, grazie a mergeParams impostato su true.

28
00:01:20,950 --> 00:01:21,783
‫Tutto ok?

29
00:01:21,783 --> 00:01:26,783
‫Quindi facciamo solo alcune semplici modifiche qui, va bene?

30
00:01:27,080 --> 00:01:29,080
‫E quello che faremo

31
00:01:29,080 --> 00:01:32,450
‫qui è controllare se c'è un tourId, e se ce

32
00:01:32,450 --> 00:01:34,540
‫n'è uno, beh, allora cercheremo solo

33
00:01:34,540 --> 00:01:38,260
‫recensioni in cui il tour è uguale a quel tourId, ok?

34
00:01:38,260 --> 00:01:39,530
‫Quindi, è qualcosa

35
00:01:39,530 --> 00:01:42,800
‫che è molto semplice da implementare usando find, giusto?

36
00:01:42,800 --> 00:01:46,600
‫Quindi, in pratica, quello che stiamo facendo è qualcosa del genere.

37
00:01:46,600 --> 00:01:51,127
‫Quindi, se c'è richiesta. parametri. tourId, quindi

38
00:01:53,690 --> 00:01:56,230
‫vogliamo creare un oggetto filtro,

39
00:01:56,230 --> 00:01:59,100
‫che utilizzeremo in seguito proprio qui.

40
00:01:59,100 --> 00:02:02,580
‫Mettiamolo qui subito, e abbiamo

41
00:02:02,580 --> 00:02:05,820
‫anche bisogno di inizializzarlo.

42
00:02:05,820 --> 00:02:10,820
‫Quindi, lasciamo filtrare, perché vogliamo quindi mutare questo, ok?

43
00:02:11,530 --> 00:02:14,460
‫Quindi, se c'è un tourId, allora questo filtro dovrebbe

44
00:02:14,460 --> 00:02:15,710
‫essere uguale a tour:

45
00:02:17,880 --> 00:02:20,087
‫req. parametri. tourId.

46
00:02:25,570 --> 00:02:28,740
‫Ok, e quindi, di nuovo, se c'è un tourId,

47
00:02:28,740 --> 00:02:32,520
‫allora in pratica questo oggetto qui è ciò che sarà qui.

48
00:02:32,520 --> 00:02:34,610
‫E quindi verranno trovate solo

49
00:02:34,610 --> 00:02:37,090
‫le recensioni in cui il tour corrisponde all'ID.

50
00:02:37,090 --> 00:02:40,610
‫Quindi, se è tutta una normale chiamata

51
00:02:40,610 --> 00:02:44,450
‫API senza route nidificata, allora quel filtro sarà semplicemente

52
00:02:44,450 --> 00:02:48,130
‫questo oggetto vuoto, quindi troveremo tutte le recensioni, ok?

53
00:02:48,130 --> 00:02:50,140
‫E quindi, proviamolo, perché

54
00:02:50,140 --> 00:02:54,423
‫questo è tutto ciò che dobbiamo cambiare qui, va bene?

55
00:02:56,030 --> 00:02:57,913
‫Allora, salviamo

56
00:02:59,100 --> 00:03:03,680
‫questo, anche questo, va bene?

57
00:03:03,680 --> 00:03:07,300
‫E quindi, per iniziare, testiamo se il

58
00:03:07,300 --> 00:03:12,060
‫nostro getAllReviews, quindi quello normale, funziona ancora come previsto, ok?

59
00:03:12,060 --> 00:03:15,830
‫Quindi otteniamo tutte e quattro le recensioni che sono nella nostra collezione.

60
00:03:15,830 --> 00:03:17,373
‫Verifichiamolo e

61
00:03:19,320 --> 00:03:22,803
‫in effetti ci sono quattro documenti, ok?

62
00:03:23,800 --> 00:03:25,220
‫Ma ora,

63
00:03:25,220 --> 00:03:29,510
‫creiamo effettivamente il nostro percorso getAllReviews nidificato, ok?

64
00:03:29,510 --> 00:03:32,433
‫Quindi, quello che farò è copiare questo.

65
00:03:35,270 --> 00:03:40,270
‫Ok, e poi aggiungi semplicemente le recensioni, ok?

66
00:03:40,460 --> 00:03:43,670
‫E quindi questo tour è il City Wanderer, e

67
00:03:43,670 --> 00:03:46,020
‫in realtà ha una recensione.

68
00:03:46,020 --> 00:03:48,530
‫E quindi, ora ci aspettiamo di ottenere

69
00:03:48,530 --> 00:03:51,340
‫un array con un oggetto lì dentro, ok?

70
00:03:51,340 --> 00:03:53,110
‫Quindi, aveva solo una recensione.

71
00:03:53,110 --> 00:03:55,770
‫E infatti, questo è esattamente ciò che otteniamo.

72
00:03:55,770 --> 00:04:00,430
‫Quindi queste sono tutte le recensioni presenti in questo tour, quindi

73
00:04:00,430 --> 00:04:02,860
‫il tour con questo ID.

74
00:04:02,860 --> 00:04:06,323
‫E, in realtà, è abbastanza corretto, giusto?

75
00:04:07,210 --> 00:04:11,220
‫Proviamone un altro, e ricordo che questo, quindi il Forest

76
00:04:11,220 --> 00:04:14,743
‫Hiker, in realtà ha avuto due recensioni.

77
00:04:15,990 --> 00:04:19,173
‫Quindi vediamo se funziona anche così.

78
00:04:21,000 --> 00:04:22,690
‫E quindi sì, davvero.

79
00:04:22,690 --> 00:04:23,563
‫Qui ci sono.

80
00:04:24,930 --> 00:04:26,340
‫Tutto ok?

81
00:04:26,340 --> 00:04:30,830
‫Quindi salviamolo, ancora in quella cartella tour/recensioni, e

82
00:04:30,830 --> 00:04:33,387
‫quindi getAllReviews in tour.

83
00:04:39,840 --> 00:04:41,540
‫Ok, fantastico.

84
00:04:41,540 --> 00:04:45,710
‫In realtà è tutto ciò che avevo da mostrarti sui percorsi nidificati.

85
00:04:45,710 --> 00:04:49,610
‫Quindi, continuiamo a riempire il nostro controller di revisione,

86
00:04:49,610 --> 00:04:52,462
‫perché in questo momento abbiamo solo

87
00:04:52,462 --> 00:04:54,350
‫getAllReviews e createReview.

88
00:04:54,350 --> 00:04:56,380
‫E quindi vogliamo anche

89
00:04:56,380 --> 00:04:58,540
‫aggiornare, eliminare e tutto il resto,

90
00:04:58,540 --> 00:05:01,253
‫quindi ce ne occuperemo nella prossima lezione.

