﻿1
00:00:00,673 --> 00:00:03,770
‫Narrador: Agora, outro recurso extremamente importante

2
00:00:03,770 --> 00:00:07,200
‫de uma boa API é fornecer paginação.

3
00:00:07,200 --> 00:00:09,040
‫Então basicamente permitindo que

4
00:00:09,040 --> 00:00:12,660
‫o usuário selecione apenas uma determinada página de

5
00:00:12,660 --> 00:00:15,373
‫nossos resultados, caso tenhamos muitos resultados.

6
00:00:17,140 --> 00:00:19,070
‫Então, vamos fingir que temos,

7
00:00:19,070 --> 00:00:21,720
‫por exemplo, 1000 documentos em uma determinada coleção.

8
00:00:21,720 --> 00:00:25,160
‫E dizemos que em cada página temos 100 documentos.

9
00:00:25,160 --> 00:00:28,230
‫Isso significaria que teríamos 10 páginas, certo?

10
00:00:28,230 --> 00:00:31,210
‫Portanto, 10 vezes 100 é 1000.

11
00:00:31,210 --> 00:00:34,430
‫E, com base nisso, como vamos implementar a paginação

12
00:00:34,430 --> 00:00:36,460
‫usando uma string de consulta?

13
00:00:36,460 --> 00:00:40,003
‫Bem, vamos usar os campos de página e delimitar.

14
00:00:41,460 --> 00:00:44,810
‫Portanto, haverá um campo de página.

15
00:00:44,810 --> 00:00:47,230
‫Digamos que queremos a página dois e

16
00:00:47,230 --> 00:00:49,053
‫haverá um campo de limite.

17
00:00:50,760 --> 00:00:53,580
‫E esse limite aqui basicamente significa a quantidade

18
00:00:53,580 --> 00:00:56,090
‫de resultados que queremos por página.

19
00:00:56,090 --> 00:00:59,090
‫E isso está definido aqui para apenas 10 e,

20
00:00:59,090 --> 00:01:01,610
‫claro, temos que corrigir este aqui.

21
00:01:01,610 --> 00:01:03,910
‫Não é uma vírgula, mas um e.

22
00:01:03,910 --> 00:01:06,690
‫Então, página dois e o limite 10.

23
00:01:06,690 --> 00:01:09,930
‫Agora voltando ao exemplo de 1000 resultados, se

24
00:01:09,930 --> 00:01:13,380
‫o limite é 10, então apenas 10 resultados por

25
00:01:13,380 --> 00:01:15,670
‫página, bem, então teremos 100

26
00:01:15,670 --> 00:01:18,800
‫páginas e aqui estamos exibindo a página número

27
00:01:18,800 --> 00:01:20,780
‫2 dessas 100 páginas.

28
00:01:20,780 --> 00:01:21,880
‫OK?

29
00:01:21,880 --> 00:01:26,600
‫Agora, precisamos agora de uma maneira de implementar isso usando o Mongoose.

30
00:01:26,600 --> 00:01:29,820
‫Então, vamos dar uma olhada em como poderíamos fazer

31
00:01:29,820 --> 00:01:31,653
‫isso voltando ao nosso código.

32
00:01:33,790 --> 00:01:35,313
‫Portanto, o recurso número

33
00:01:36,970 --> 00:01:37,913
‫quatro, Paginação.

34
00:01:39,530 --> 00:01:40,363
‫Tudo bem,

35
00:01:40,363 --> 00:01:42,810
‫e começarei criando um exemplo de

36
00:01:42,810 --> 00:01:44,880
‫consulta aqui, como fizemos antes.

37
00:01:44,880 --> 00:01:48,930
‫Então, digamos que a consulta seja igual à consulta.

38
00:01:48,930 --> 00:01:51,200
‫E agora, que tipo de métodos

39
00:01:51,200 --> 00:01:53,270
‫temos para implementar a paginação?

40
00:01:53,270 --> 00:01:55,770
‫Bem, o mais útil é pular e vou

41
00:01:56,810 --> 00:01:59,570
‫explicar o que ele faz em um segundo, então

42
00:01:59,570 --> 00:02:01,510
‫vamos colocar um número aleatório aqui.

43
00:02:01,510 --> 00:02:03,913
‫Então pule e limite, e vamos

44
00:02:05,830 --> 00:02:07,070
‫colocar 10.

45
00:02:07,070 --> 00:02:10,150
‫e, portanto, este limite aqui é exatamente o mesmo que

46
00:02:10,150 --> 00:02:12,670
‫o limite que definimos na string de consulta.

47
00:02:12,670 --> 00:02:14,970
‫Então, basicamente, a quantidade de resultados

48
00:02:14,970 --> 00:02:16,810
‫que queremos na consulta.

49
00:02:16,810 --> 00:02:20,710
‫E o salto, que temos aqui, é a quantidade de resultados

50
00:02:20,710 --> 00:02:24,490
‫que deve ser ignorada antes de realmente consultar os dados.

51
00:02:24,490 --> 00:02:27,836
‫Tudo bem, então, novamente, este é apenas um espaço reservado aqui.

52
00:02:27,836 --> 00:02:30,573
‫Vamos voltar a este exemplo que temos aqui.

53
00:02:31,550 --> 00:02:34,193
‫Vou apenas copiar esta string de consulta aqui.

54
00:02:36,279 --> 00:02:39,790
‫então, digamos que o usuário queira a página número

55
00:02:39,790 --> 00:02:42,600
‫dois com 10 resultados por página.

56
00:02:42,600 --> 00:02:46,320
‫Isso significa que os resultados de um a 10 estão na página um e

57
00:02:46,320 --> 00:02:49,090
‫os de 11 a 20 estão na página 2.

58
00:02:49,090 --> 00:02:52,660
‫Ok, então o que isso significa é que queremos pular

59
00:02:52,660 --> 00:02:55,720
‫10 resultados antes de realmente começar a consultar.

60
00:02:55,720 --> 00:02:56,750
‫OK.

61
00:02:56,750 --> 00:02:59,030
‫Portanto, novamente, um a 10 são

62
00:03:00,840 --> 00:03:02,430
‫para a página um e

63
00:03:02,430 --> 00:03:04,770
‫11 a 20 são para a página

64
00:03:07,230 --> 00:03:08,390
‫dois, e

65
00:03:08,390 --> 00:03:09,580
‫assim por diante.

66
00:03:09,580 --> 00:03:13,303
‫Assim, 21 a 30 será a página três, e assim por diante

67
00:03:14,400 --> 00:03:15,920
‫e assim por diante.

68
00:03:15,920 --> 00:03:17,950
‫E então precisamos pular

69
00:03:17,950 --> 00:03:21,590
‫10 resultados para chegar ao resultado número 11, certo?

70
00:03:21,590 --> 00:03:26,590
‫Então, para o resultado número 11, que será o primeiro da página dois.

71
00:03:26,640 --> 00:03:30,230
‫Ok, e como é a página dois que foi solicitada,

72
00:03:30,230 --> 00:03:33,050
‫bem, novamente precisamos pular 10 resultados antes de

73
00:03:33,050 --> 00:03:35,380
‫realmente iniciarmos a página dois.

74
00:03:35,380 --> 00:03:37,450
‫OK? Faz sentido?

75
00:03:37,450 --> 00:03:41,060
‫E, por exemplo, se solicitássemos a página número três, bem,

76
00:03:41,060 --> 00:03:43,380
‫então, é claro, 20 resultados primeiro

77
00:03:43,380 --> 00:03:45,400
‫teriam que ser ignorados.

78
00:03:45,400 --> 00:03:46,840
‫E, portanto, precisaremos

79
00:03:46,840 --> 00:03:49,680
‫calcular esse valor de salto aqui.

80
00:03:49,680 --> 00:03:52,750
‫Basicamente, com base na página e no limite.

81
00:03:52,750 --> 00:03:55,700
‫Agora você pode perguntar por que eu não peço diretamente o

82
00:03:55,700 --> 00:03:57,690
‫valor de salto na string de consulta,

83
00:03:57,690 --> 00:04:00,370
‫mas isso é porque para o usuário esse valor

84
00:04:00,370 --> 00:04:01,980
‫aqui é meio abstrato, certo?

85
00:04:01,980 --> 00:04:05,537
‫É muito mais fácil simplesmente dizer: "Bem, eu quero a página número um", ou quero

86
00:04:05,537 --> 00:04:06,967
‫a página número cinco "ou quero

87
00:04:06,967 --> 00:04:09,050
‫a página número 10. “Ok, então

88
00:04:09,050 --> 00:04:12,520
‫para o usuário é muito mais fácil não lidar

89
00:04:12,520 --> 00:04:14,983
‫com pular valores aqui e todas

90
00:04:14,983 --> 00:04:18,100
‫essas coisas, o usuário quer que seja fácil

91
00:04:18,100 --> 00:04:20,500
‫e apenas definir uma página.

92
00:04:20,500 --> 00:04:22,540
‫Agora, antes de realmente começarmos

93
00:04:22,540 --> 00:04:26,420
‫a calcular o valor de salto, precisamos primeiro obter a página

94
00:04:26,420 --> 00:04:28,840
‫e o limite da string de

95
00:04:28,840 --> 00:04:31,700
‫consulta e também devemos definir alguns valores padrão.

96
00:04:31,700 --> 00:04:33,550
‫Ok, isso é basicamente

97
00:04:33,550 --> 00:04:35,910
‫porque ainda queremos paginação, mesmo

98
00:04:35,910 --> 00:04:38,560
‫que o usuário não especifique nenhuma

99
00:04:38,560 --> 00:04:40,040
‫página ou limite.

100
00:04:40,040 --> 00:04:43,130
‫Porque, por exemplo, digamos que temos um milhão de

101
00:04:43,130 --> 00:04:44,900
‫resultados em nosso banco

102
00:04:44,900 --> 00:04:47,750
‫de dados e, claro, quando o usuário

103
00:04:47,750 --> 00:04:51,820
‫fizer a solicitação, não mostraremos simplesmente todos esses 10 milhões de resultados.

104
00:04:51,820 --> 00:04:54,860
‫Isso não seria muito amigável, não é?

105
00:04:54,860 --> 00:04:58,610
‫E então, vou definir por padrão a página número um

106
00:04:58,610 --> 00:05:01,500
‫e um limite de, digamos, 100.

107
00:05:01,500 --> 00:05:05,100
‫Então, por padrão, quando um usuário solicita todos os

108
00:05:05,100 --> 00:05:08,070
‫tours neste exemplo, ele obtém apenas 100,

109
00:05:08,070 --> 00:05:10,273
‫e não um milhão, certo?

110
00:05:11,470 --> 00:05:16,427
‫Portanto, a página é, obviamente, um pedido. inquerir. página e agora

111
00:05:18,290 --> 00:05:20,890
‫vou multiplicá-lo por um, que é apenas

112
00:05:20,890 --> 00:05:23,120
‫um bom truque para converter uma

113
00:05:23,120 --> 00:05:24,830
‫string em um número.

114
00:05:24,830 --> 00:05:28,370
‫Ok, então talvez você tenha notado antes que cada vez que

115
00:05:28,370 --> 00:05:30,600
‫colocamos um número em uma string

116
00:05:30,600 --> 00:05:33,730
‫de consulta, ele será uma string ou um objeto

117
00:05:33,730 --> 00:05:37,410
‫de consulta e, portanto, precisamos consertar isso simplesmente multiplicando por um.

118
00:05:37,410 --> 00:05:41,760
‫Ok, e por padrão, queremos a página número um.

119
00:05:41,760 --> 00:05:42,593
‫Tudo bem?

120
00:05:42,593 --> 00:05:44,750
‫E, portanto, esta é uma boa

121
00:05:44,750 --> 00:05:47,690
‫maneira em JavaScript de definir basicamente os valores padrão.

122
00:05:47,690 --> 00:05:50,463
‫E tenho certeza que você está familiarizado com isso, certo?

123
00:05:51,310 --> 00:05:56,310
‫De qualquer forma, o limite está na solicitação. inquerir. limite vezes

124
00:05:58,370 --> 00:06:00,610
‫um novamente para convertê-lo, ou

125
00:06:00,610 --> 00:06:04,300
‫o padrão de 100 que acabamos de mencionar.

126
00:06:04,300 --> 00:06:08,240
‫O ideal é que o usuário apenas especifique o número da página

127
00:06:08,240 --> 00:06:09,570
‫que solicita e

128
00:06:09,570 --> 00:06:12,010
‫nem se preocupe com o limite de páginas.

129
00:06:12,010 --> 00:06:14,370
‫Isso é para casos de uso mais específicos.

130
00:06:14,370 --> 00:06:19,060
‫Ok, e agora tudo o que precisamos fazer é definir então para

131
00:06:19,060 --> 00:06:20,420
‫calcular basicamente o

132
00:06:21,450 --> 00:06:25,130
‫valor de salto que acabamos de falar aqui antes.

133
00:06:25,130 --> 00:06:28,470
‫E a melhor maneira de fazer isso é voltar a um exemplo.

134
00:06:28,470 --> 00:06:31,940
‫Então, novamente, digamos que estejamos solicitando a página número três, com

135
00:06:31,940 --> 00:06:33,610
‫o limite de 10.

136
00:06:33,610 --> 00:06:37,140
‫e vemos aqui para a página número três os resultados são

137
00:06:37,140 --> 00:06:38,900
‫de 21 a 30.

138
00:06:38,900 --> 00:06:42,340
‫Portanto, começa no resultado número 21, o que significa que

139
00:06:42,340 --> 00:06:44,110
‫precisamos pular 20 resultados.

140
00:06:44,110 --> 00:06:47,140
‫E 20 resultados são basicamente duas vezes 10,

141
00:06:47,140 --> 00:06:49,510
‫ou seja, duas vezes esse limite.

142
00:06:49,510 --> 00:06:52,700
‫Ok, e a partir daí começamos a obter uma fórmula.

143
00:06:52,700 --> 00:06:57,140
‫Portanto, duas vezes dez é basicamente três menos um vezes 10.

144
00:06:57,140 --> 00:06:59,293
‫E três é a página em que estamos.

145
00:07:00,161 --> 00:07:01,760
‫Essa é a nossa fórmula.

146
00:07:01,760 --> 00:07:03,780
‫Então, a página menos um

147
00:07:03,780 --> 00:07:05,693
‫e a página anterior, basicamente,

148
00:07:06,690 --> 00:07:07,523
‫vezes o

149
00:07:08,750 --> 00:07:09,583
‫limite.

150
00:07:10,960 --> 00:07:13,733
‫Ok, então espero que faça sentido, agora

151
00:07:14,630 --> 00:07:17,273
‫vamos substituir esses valores aqui.

152
00:07:18,330 --> 00:07:19,163
‫Saltar

153
00:07:20,420 --> 00:07:22,193
‫e limite de limite.

154
00:07:23,610 --> 00:07:24,550
‫OK?

155
00:07:24,550 --> 00:07:27,900
‫Então, basicamente, este número aqui são todos os resultados que

156
00:07:27,900 --> 00:07:31,230
‫vêm antes da página que estamos solicitando agora.

157
00:07:31,230 --> 00:07:34,330
‫Então, novamente, se estivermos solicitando a página número três,

158
00:07:34,330 --> 00:07:37,280
‫nossos resultados começarão na página número 21.

159
00:07:37,280 --> 00:07:40,020
‫E queremos pular 20 resultados antes disso.

160
00:07:40,020 --> 00:07:41,490
‫E 20 resultados

161
00:07:41,490 --> 00:07:44,683
‫é porque temos 2 páginas e 10

162
00:07:45,940 --> 00:07:49,350
‫resultados em cada. Sim, será a página que solicitamos.

163
00:07:49,350 --> 00:07:51,450
‫Então, página aqui, menos um, então

164
00:07:51,450 --> 00:07:54,260
‫a página anterior vezes o número de resultados em

165
00:07:54,260 --> 00:07:55,103
‫cada página.

166
00:07:56,050 --> 00:07:58,870
‫Ok, então essa é a quantidade de documentos

167
00:07:58,870 --> 00:08:00,133
‫que serão ignorados.

168
00:08:01,772 --> 00:08:03,630
‫Ok, então espero que faça sentido.

169
00:08:03,630 --> 00:08:06,520
‫Vamos agora tentar realmente isso.

170
00:08:06,520 --> 00:08:09,460
‫E como temos poucos resultados aqui, precisamos

171
00:08:09,460 --> 00:08:12,093
‫testá-lo com um limite muito pequeno.

172
00:08:13,260 --> 00:08:17,440
‫Então, digamos que desejamos apenas três resultados por página e, na verdade,

173
00:08:17,440 --> 00:08:19,640
‫vamos começar na página número um.

174
00:08:22,280 --> 00:08:25,240
‫Portanto, envie-o e, de fato, agora só obteremos três

175
00:08:25,240 --> 00:08:27,463
‫resultados, como você pode ver aqui.

176
00:08:28,880 --> 00:08:30,630
‫Então, esses três, vamos ver.

177
00:08:30,630 --> 00:08:32,030
‫Assim, The Forest Hiker, The

178
00:08:32,030 --> 00:08:33,320
‫Sea Explorer e The

179
00:08:33,320 --> 00:08:34,473
‫City Wanderer.

180
00:08:35,550 --> 00:08:36,630
‫OK?

181
00:08:36,630 --> 00:08:38,900
‫Vamos tentar a página número dois e,

182
00:08:38,900 --> 00:08:41,700
‫por algum motivo, o carteiro fica pulando de um lado

183
00:08:41,700 --> 00:08:44,393
‫para o outro toda vez que eu mudo o URL.

184
00:08:45,900 --> 00:08:47,940
‫De qualquer forma, agora temos The Park

185
00:08:47,940 --> 00:08:49,250
‫Camper, The Snow

186
00:08:49,250 --> 00:08:50,810
‫Adventurer e The Sports Lover.

187
00:08:50,810 --> 00:08:52,920
‫Então você começa a

188
00:08:52,920 --> 00:08:55,130
‫ver que agora temos tours diferentes.

189
00:08:55,130 --> 00:08:55,963
‫OK?

190
00:08:55,963 --> 00:08:59,467
‫E então podemos dizer que nossa paginação

191
00:08:59,467 --> 00:09:01,683
‫aqui já está funcionando.

192
00:09:03,550 --> 00:09:05,120
‫Agora a última página,

193
00:09:05,120 --> 00:09:07,630
‫e temos agora As Luzes do Norte,

194
00:09:07,630 --> 00:09:08,860
‫O Provador de

195
00:09:08,860 --> 00:09:10,780
‫Vinhos e O Gazer Estelar.

196
00:09:10,780 --> 00:09:12,100
‫Tudo bem?

197
00:09:12,100 --> 00:09:16,380
‫Agora, e se tentarmos ir para a página quatro?

198
00:09:16,380 --> 00:09:19,020
‫Já sabemos que temos apenas nove

199
00:09:19,020 --> 00:09:22,820
‫tours e, portanto, na página quatro, não deve haver nada.

200
00:09:22,820 --> 00:09:23,653
‫Direito?

201
00:09:23,653 --> 00:09:25,040
‫Então, vamos testar isso.

202
00:09:25,040 --> 00:09:27,600
‫E, de fato, obtemos zero resultados.

203
00:09:27,600 --> 00:09:30,163
‫Mas é claro que isso não é o ideal.

204
00:09:31,010 --> 00:09:34,130
‫Ok, então vamos agora corrigir isso e basicamente

205
00:09:34,130 --> 00:09:37,207
‫lançar um erro cada vez que o usuário

206
00:09:37,207 --> 00:09:40,050
‫selecionar uma página que não existe.

207
00:09:40,050 --> 00:09:42,320
‫Porque essa é basicamente a situação aqui.

208
00:09:42,320 --> 00:09:45,600
‫O usuário solicitou uma página que simplesmente não existe.

209
00:09:45,600 --> 00:09:49,660
‫Não temos resultados suficientes para ter quatro páginas com

210
00:09:49,660 --> 00:09:50,733
‫três resultados.

211
00:09:53,120 --> 00:09:55,560
‫Vamos agora fazer isso, e

212
00:09:55,560 --> 00:09:57,130
‫isso realmente só

213
00:09:57,130 --> 00:10:00,020
‫acontecerá quando houver uma página na

214
00:10:00,020 --> 00:10:03,880
‫consulta e, portanto, vamos criar essa instrução if aqui.

215
00:10:03,880 --> 00:10:08,880
‫Então, se pedido. inquerir. página, somente neste

216
00:10:10,920 --> 00:10:13,960
‫caso iremos testar se estamos pulando mais

217
00:10:13,960 --> 00:10:16,560
‫tours do que realmente temos.

218
00:10:16,560 --> 00:10:18,610
‫Então, vamos ver a quantidade de tours.

219
00:10:18,610 --> 00:10:22,830
‫Portanto, o número de passeios é igual a, e agora

220
00:10:22,830 --> 00:10:25,403
‫vamos aprender um novo método.

221
00:10:26,610 --> 00:10:28,780
‫Portanto, há um novo método

222
00:10:28,780 --> 00:10:30,953
‫no modelo Tour que é chamado countDocuments.

223
00:10:34,600 --> 00:10:37,840
‫OK? E como o nome

224
00:10:37,840 --> 00:10:40,533
‫diz isso vai devolver a quantidade de documentos, certo?

225
00:10:40,533 --> 00:10:42,600
‫Na verdade ele vai retornar uma promessa

226
00:10:42,600 --> 00:10:44,410
‫mas depois aguardamos a promessa

227
00:10:44,410 --> 00:10:45,980
‫e então ele voltará

228
00:10:45,980 --> 00:10:48,133
‫com o resultado da quantidade de tours.

229
00:10:49,064 --> 00:10:53,810
‫OK? E se o número de documentos

230
00:10:53,810 --> 00:10:57,550
‫que pulamos for maior do que o número de documentos

231
00:10:57,550 --> 00:11:01,720
‫que realmente existem bem, isso significa que a página não existe, certo?

232
00:11:01,720 --> 00:11:02,553
‫Isso faz sentido?

233
00:11:04,720 --> 00:11:07,600
‫Portanto, se o salto for maior do que o

234
00:11:07,600 --> 00:11:09,360
‫número de passeios, por

235
00:11:09,360 --> 00:11:12,493
‫enquanto, o que farei aqui é lançar um novo erro.

236
00:11:14,060 --> 00:11:14,893
‫OK?

237
00:11:14,893 --> 00:11:16,380
‫Portanto, lance um

238
00:11:18,490 --> 00:11:21,253
‫novo erro, esta página não existe.

239
00:11:23,260 --> 00:11:25,970
‫Agora, por que estou jogando um erro aqui?

240
00:11:25,970 --> 00:11:29,120
‫Bem, simplesmente porque se eu lançar um

241
00:11:29,120 --> 00:11:32,560
‫erro aqui no tribloco em que estamos atualmente,

242
00:11:32,560 --> 00:11:33,830
‫ele irá

243
00:11:33,830 --> 00:11:37,180
‫automaticamente e imediatamente passar para o bloco catch,

244
00:11:37,180 --> 00:11:42,180
‫e então enviará de volta este tipo 404 de mensagem de falha.

245
00:11:42,610 --> 00:11:43,830
‫OK?

246
00:11:43,830 --> 00:11:46,470
‫E é isso que queremos agora.

247
00:11:46,470 --> 00:11:49,440
‫Lembre-se de que implementaremos um tratamento de erros muito melhor

248
00:11:49,440 --> 00:11:51,510
‫um pouco mais adiante no curso.

249
00:11:51,510 --> 00:11:55,010
‫E, na verdade, na próxima seção, ok?

250
00:11:55,010 --> 00:11:56,820
‫Mas, por enquanto, vamos manter as

251
00:11:56,820 --> 00:11:58,390
‫coisas simples, lançar este erro

252
00:11:58,390 --> 00:12:00,880
‫aqui, caso estejamos tentando pular mais documentos do

253
00:12:00,880 --> 00:12:01,980
‫que realmente temos.

254
00:12:02,830 --> 00:12:03,663
‫OK?

255
00:12:04,620 --> 00:12:08,070
‫Então esse é o caso certo, vamos enviar aqui

256
00:12:08,070 --> 00:12:11,350
‫e esse não é o resultado que eu

257
00:12:11,350 --> 00:12:13,150
‫esperava, então vamos voltar

258
00:12:13,150 --> 00:12:15,590
‫então agora nossa página é quatro

259
00:12:15,590 --> 00:12:17,670
‫e o limite é três.

260
00:12:17,670 --> 00:12:21,730
‫Então o salto aqui seria três vezes três, então nove, ok?

261
00:12:21,730 --> 00:12:24,010
‫E o número de passeios também é nove e,

262
00:12:24,010 --> 00:12:26,890
‫portanto, ignorar não é maior do que o número de passeios

263
00:12:26,890 --> 00:12:28,840
‫e, portanto, não recebemos esse erro.

264
00:12:28,840 --> 00:12:32,910
‫Portanto, o que precisamos fazer é defini-lo como maior ou igual.

265
00:12:32,910 --> 00:12:35,423
‫Ok, isso agora deve funcionar.

266
00:12:36,350 --> 00:12:38,610
‫E isso leva muito tempo, e

267
00:12:38,610 --> 00:12:39,443
‫demorou.

268
00:12:39,443 --> 00:12:42,290
‫Agora temos o status de falha aqui e

269
00:12:42,290 --> 00:12:43,470
‫um 404.

270
00:12:43,470 --> 00:12:44,303
‫Por alguma

271
00:12:45,170 --> 00:12:47,640
‫razão, esse erro não está aparecendo aqui,

272
00:12:47,640 --> 00:12:49,113
‫o que realmente deveria.

273
00:12:50,360 --> 00:12:54,500
‫Mas não se preocupe com isso, isso não é realmente importante.

274
00:12:54,500 --> 00:12:58,010
‫O que importa é que ele realmente entrou em nosso bloco catch

275
00:12:58,010 --> 00:13:00,810
‫e, em seguida, enviou de volta esta resposta 404.

276
00:13:00,810 --> 00:13:03,490
‫Tudo o resto vamos implementar um pouco mais tarde.

277
00:13:03,490 --> 00:13:05,660
‫Ok, e é isso mesmo.

278
00:13:05,660 --> 00:13:09,140
‫Esses são todos os métodos que adicionaremos à nossa

279
00:13:09,140 --> 00:13:12,727
‫consulta e, quando finalmente alcançarmos a próxima linha de

280
00:13:12,727 --> 00:13:14,740
‫código aqui, nossa consulta

281
00:13:14,740 --> 00:13:17,440
‫será aguardada e retornada com os passeios.

282
00:13:17,440 --> 00:13:21,365
‫Ok, e neste ponto nossa consulta pode realmente

283
00:13:21,365 --> 00:13:22,770
‫parecer algo assim

284
00:13:24,350 --> 00:13:26,600
‫algo assim, algo como bem

285
00:13:26,600 --> 00:13:27,850
‫o

286
00:13:28,860 --> 00:13:31,433
‫que temos aqui temos sort,

287
00:13:32,630 --> 00:13:34,020
‫select, então podemos

288
00:13:34,020 --> 00:13:36,070
‫ter sort, e então

289
00:13:36,070 --> 00:13:38,270
‫algum select ali também

290
00:13:38,270 --> 00:13:39,600
‫temos skip

291
00:13:39,600 --> 00:13:41,803
‫temos limite também, e

292
00:13:43,170 --> 00:13:46,270
‫essa é realmente uma grande consulta.

293
00:13:46,270 --> 00:13:48,650
‫E novamente, o que nos permite isso

294
00:13:48,650 --> 00:13:51,680
‫é que cada um desses métodos aqui sempre retornará

295
00:13:51,680 --> 00:13:54,610
‫uma nova consulta que podemos então encadear no

296
00:13:54,610 --> 00:13:55,570
‫próximo método

297
00:13:55,570 --> 00:13:59,330
‫e no próximo método, e no próximo método até que finalmente

298
00:13:59,330 --> 00:14:02,890
‫esperemos a consulta para que possa realmente nos dê nossos documentos.

299
00:14:02,890 --> 00:14:06,110
‫Ok, então vamos nos livrar de todos esses comentários

300
00:14:06,110 --> 00:14:08,500
‫e sim, é isso por agora.

301
00:14:08,500 --> 00:14:10,850
‫Para esses recursos, vamos adicionar mais um

302
00:14:10,850 --> 00:14:12,220
‫na próxima aula,

303
00:14:12,220 --> 00:14:14,570
‫mas esse será um pouco diferente desses.

304
00:14:14,570 --> 00:14:18,090
‫Não vai usar um desses métodos de consulta, certo?

305
00:14:18,090 --> 00:14:20,470
‫Portanto, espero que nas últimas duas palestras você

306
00:14:20,470 --> 00:14:22,230
‫tenha realmente aprendido os meandros

307
00:14:22,230 --> 00:14:24,530
‫da consulta de dados com o Mongoose.

308
00:14:24,530 --> 00:14:27,540
‫Então, é claro, todos esses métodos que usamos

309
00:14:27,540 --> 00:14:30,640
‫não são úteis apenas para os recursos que implementamos aqui.

310
00:14:30,640 --> 00:14:32,760
‫Você pode realmente criar todos os tipos

311
00:14:32,760 --> 00:14:36,200
‫de consultas que você pode imaginar para todos os tipos de aplicativos.

312
00:14:36,200 --> 00:14:38,890
‫Então, mostrei a você todas as técnicas neste

313
00:14:38,890 --> 00:14:41,090
‫contexto desses diferentes recursos de API,

314
00:14:41,090 --> 00:14:43,000
‫mas é claro que você

315
00:14:43,000 --> 00:14:46,520
‫poderá usá-las em todos os seus aplicativos no futuro, certo?

316
00:14:46,520 --> 00:14:48,780
‫Espero que tenha sido divertido

317
00:14:48,780 --> 00:14:53,510
‫para você e, se foi, vamos prosseguir agora para o próximo.

318
00:14:53,510 --> 00:14:54,343
‫Vê você!

