﻿1
00:00:01,150 --> 00:00:04,333
‫Instrutor: Em seguida, vamos falar sobre validadores personalizados.

2
00:00:05,940 --> 00:00:10,110
‫Portanto, às vezes os validadores integrados simplesmente não são suficientes.

3
00:00:10,110 --> 00:00:11,100
‫E, nesse

4
00:00:11,100 --> 00:00:14,250
‫caso, também podemos construir nossos próprios validadores personalizados.

5
00:00:14,250 --> 00:00:18,230
‫E um validador é na verdade apenas uma função simples

6
00:00:18,230 --> 00:00:21,250
‫que deve retornar verdadeiro ou falso.

7
00:00:21,250 --> 00:00:24,330
‫E se retornar falso, significa que há um erro.

8
00:00:24,330 --> 00:00:26,650
‫E por outro lado, quando retornamos

9
00:00:26,650 --> 00:00:28,690
‫true, então a validação está

10
00:00:28,690 --> 00:00:31,260
‫correta e a entrada pode ser aceita.

11
00:00:31,260 --> 00:00:35,560
‫Ok, vamos agora construir um validador customizado simples aqui.

12
00:00:35,560 --> 00:00:39,980
‫E o que eu quero validar é se o desconto no preço

13
00:00:39,980 --> 00:00:42,863
‫é realmente inferior ao preço em si.

14
00:00:44,440 --> 00:00:46,130
‫Isso é algo que não

15
00:00:46,130 --> 00:00:47,980
‫podemos fazer usando os validadores embutidos,

16
00:00:47,980 --> 00:00:49,980
‫então vamos simplesmente construir os nossos próprios.

17
00:00:52,575 --> 00:00:54,690
‫Precisamos agora especificar aqui um objeto

18
00:00:54,690 --> 00:00:56,453
‫para as opções SchemaType.

19
00:01:00,170 --> 00:01:01,003
‫Tudo bem.

20
00:01:05,190 --> 00:01:07,400
‫Portanto, o tipo é o

21
00:01:07,400 --> 00:01:09,880
‫número e, para especificar nosso validador,

22
00:01:09,880 --> 00:01:11,853
‫usamos a propriedade validate.

23
00:01:15,270 --> 00:01:17,580
‫Valide e, como eu disse, uma função de

24
00:01:17,580 --> 00:01:19,173
‫retorno de chamada simples.

25
00:01:21,600 --> 00:01:23,840
‫E de novo, não uma função

26
00:01:23,840 --> 00:01:25,090
‫de seta, mas uma

27
00:01:25,090 --> 00:01:26,200
‫função real,

28
00:01:26,200 --> 00:01:28,730
‫pois nesta função teremos acesso a esta variável,

29
00:01:28,730 --> 00:01:30,983
‫que apontará para o documento atual.

30
00:01:31,940 --> 00:01:34,540
‫Agora, se você não precisa dessa variável, então você

31
00:01:34,540 --> 00:01:37,140
‫pode, é claro, apenas usar uma função de seta.

32
00:01:39,710 --> 00:01:41,150
‫Temos uma função de

33
00:01:41,150 --> 00:01:43,910
‫retorno de chamada, e essa função de retorno de chamada

34
00:01:43,910 --> 00:01:46,180
‫realmente tem acesso ao valor que foi inserido.

35
00:01:46,180 --> 00:01:50,330
‫Portanto, neste caso, o desconto no preço que o usuário especificou.

36
00:01:50,330 --> 00:01:53,773
‫Então é isso que chamo de valor, val para abreviar.

37
00:01:55,340 --> 00:01:57,550
‫Lembre-se de que precisamos retornar

38
00:01:57,550 --> 00:01:59,873
‫verdadeiro ou falso a partir deste validador.

39
00:02:04,090 --> 00:02:05,760
‫Quando queremos retornar

40
00:02:05,760 --> 00:02:08,230
‫falso e quando queremos retornar verdadeiro?

41
00:02:08,230 --> 00:02:11,210
‫Bem, queremos um erro quando o desconto no preço

42
00:02:11,210 --> 00:02:13,553
‫for maior ou igual ao preço.

43
00:02:14,430 --> 00:02:17,000
‫E então, basicamente, o que queremos retornar

44
00:02:17,000 --> 00:02:19,800
‫aqui é o teste para testar se o

45
00:02:19,800 --> 00:02:23,493
‫valor é menor que isso. preço.

46
00:02:26,050 --> 00:02:30,210
‫Certo, digamos que o desconto no preço seja 100

47
00:02:30,210 --> 00:02:33,693
‫e que o preço real seja 200.

48
00:02:35,090 --> 00:02:39,080
‫100 é menos que 200, verdadeiro e, portanto, não temos erro.

49
00:02:39,080 --> 00:02:42,110
‫E isso faz sentido porque é exatamente o que queremos.

50
00:02:42,110 --> 00:02:44,990
‫O desconto no preço deve ser sempre menor.

51
00:02:44,990 --> 00:02:49,000
‫Por outro lado, se o desconto for 250,

52
00:02:49,000 --> 00:02:50,970
‫isso será falso.

53
00:02:50,970 --> 00:02:54,623
‫E então false, lembre-se, irá disparar um erro de validação.

54
00:02:57,980 --> 00:02:59,530
‫Vamos agora testar na verdade.

55
00:03:01,890 --> 00:03:02,723
‫Preço

56
00:03:03,877 --> 00:03:06,800
‫(clacking do teclado) e desconto

57
00:03:06,800 --> 00:03:07,973
‫no preço.

58
00:03:09,220 --> 00:03:12,000
‫E vamos usar os valores que

59
00:03:13,870 --> 00:03:17,133
‫usamos antes e também preciso alterar o nome aqui.

60
00:03:18,660 --> 00:03:22,990
‫Ok, agora nosso desconto é maior do que o preço e, portanto,

61
00:03:22,990 --> 00:03:24,833
‫devemos obter nosso erro.

62
00:03:26,440 --> 00:03:30,560
‫Ok, de fato, temos um erro de validação.

63
00:03:30,560 --> 00:03:33,850
‫Então, falhou para o desconto do preço do caminho.

64
00:03:33,850 --> 00:03:37,020
‫Agora, não temos nenhuma mensagem personalizada aqui, então

65
00:03:37,020 --> 00:03:39,113
‫vamos corrigir isso rapidamente.

66
00:03:40,230 --> 00:03:43,580
‫Tudo bem, e a maneira como fazemos isso é muito semelhante

67
00:03:43,580 --> 00:03:45,650
‫à que fizemos com o enum.

68
00:03:47,750 --> 00:03:50,510
‫Portanto, precisamos realmente especificar outro objeto e, em seguida,

69
00:03:50,510 --> 00:03:52,313
‫definir a propriedade da mensagem.

70
00:03:55,830 --> 00:03:56,663
‫Validate

71
00:03:59,320 --> 00:04:00,940
‫deve ser um objeto

72
00:04:00,940 --> 00:04:03,280
‫e então teremos nossa mensagem lá

73
00:04:04,370 --> 00:04:06,510
‫e esta função aqui ficará

74
00:04:06,510 --> 00:04:08,597
‫em uma propriedade chamada validator.

75
00:04:15,639 --> 00:04:18,205
‫Ok e nossa mensagem aqui será

76
00:04:18,205 --> 00:04:21,527
‫(barulho de teclado), o preço com desconto

77
00:04:21,527 --> 00:04:22,360
‫deve estar

78
00:04:23,510 --> 00:04:24,343
‫abaixo

79
00:04:26,220 --> 00:04:27,693
‫do preço normal.

80
00:04:30,520 --> 00:04:34,840
‫Aqui precisamos de uma vírgula e agora estamos bem.

81
00:04:34,840 --> 00:04:38,480
‫E, na verdade, um truque muito bom é que essa mensagem

82
00:04:38,480 --> 00:04:41,003
‫aqui também tem acesso ao valor.

83
00:04:42,180 --> 00:04:44,930
‫E isso funciona de uma maneira meio estranha

84
00:04:44,930 --> 00:04:47,520
‫e realmente é interno ao Mongoose, então

85
00:04:47,520 --> 00:04:49,610
‫não tem nada a ver

86
00:04:49,610 --> 00:04:54,283
‫com JavaScript, então posso simplesmente usar as chaves aqui e depois o valor.

87
00:04:56,030 --> 00:04:58,020
‫Portanto, esta parte aqui terá acesso

88
00:04:58,020 --> 00:04:59,900
‫ao valor que foi inserido,

89
00:04:59,900 --> 00:05:02,973
‫portanto, tem exatamente o mesmo valor que esta variável val.

90
00:05:06,150 --> 00:05:07,400
‫Então, vamos

91
00:05:08,720 --> 00:05:10,850
‫testar isso novamente e agora realmente

92
00:05:10,850 --> 00:05:15,800
‫recebemos nossa mensagem e até mesmo acessaremos o preço de 250 que especificamos aqui.

93
00:05:15,800 --> 00:05:19,890
‫Agora vamos alterá-lo para 100 e agora deve funcionar

94
00:05:19,890 --> 00:05:21,920
‫e sim, funciona.

95
00:05:21,920 --> 00:05:23,570
‫Tão bom.

96
00:05:23,570 --> 00:05:26,290
‫Agora, há uma advertência muito importante que

97
00:05:26,290 --> 00:05:28,030
‫precisamos observar aqui e é

98
00:05:28,030 --> 00:05:30,763
‫que dentro de uma função de validador, essa

99
00:05:30,763 --> 00:05:33,080
‫palavra-chave só vai apontar para o

100
00:05:33,080 --> 00:05:34,290
‫documento atual

101
00:05:34,290 --> 00:05:36,573
‫quando estivermos criando um novo documento.

102
00:05:37,740 --> 00:05:40,653
‫Portanto, esta função aqui não funcionará na atualização.

103
00:05:41,813 --> 00:05:44,143
‫E isso é muito importante notar.

104
00:05:45,412 --> 00:05:48,230
‫Veja, no Mongoose, há algumas advertências que

105
00:05:48,230 --> 00:05:50,110
‫você realmente precisa estar ciente

106
00:05:50,110 --> 00:05:51,990
‫ao trabalhar com ele.

107
00:05:51,990 --> 00:05:54,430
‫E eu aprendi tudo isso por experiência

108
00:05:54,430 --> 00:05:57,390
‫e é por isso que agora posso contar a você.

109
00:05:57,390 --> 00:06:00,550
‫Então, encontrei um erro uma vez com este e,

110
00:06:00,550 --> 00:06:02,090
‫a partir de

111
00:06:02,090 --> 00:06:05,220
‫então, sei que só posso usar esse tipo

112
00:06:05,220 --> 00:06:07,160
‫de validador com uma palavra-chave

113
00:06:07,160 --> 00:06:09,730
‫this quando estiver realmente criando novos documentos.

114
00:06:09,730 --> 00:06:12,143
‫Então, deixe-me escrever isso aqui para você.

115
00:06:12,143 --> 00:06:15,143
‫(teclado estalando) Tudo bem, então

116
00:06:25,210 --> 00:06:28,610
‫espero que você esteja anotando todas

117
00:06:28,610 --> 00:06:32,440
‫essas pequenas informações muito importantes que são

118
00:06:32,440 --> 00:06:34,083
‫muito importantes.

119
00:06:34,940 --> 00:06:36,680
‫A mesma coisa aqui embaixo.

120
00:06:36,680 --> 00:06:38,530
‫Lembre-se de onde eu

121
00:06:38,530 --> 00:06:42,100
‫disse a você que este DOCUMENTO MIDDLEWARE só roda para

122
00:06:42,100 --> 00:06:44,640
‫salvar e criar, mas não para atualizar.

123
00:06:44,640 --> 00:06:46,700
‫E essa é uma das outras

124
00:06:46,700 --> 00:06:49,013
‫coisas que são realmente importantes para nunca esquecer.

125
00:06:51,330 --> 00:06:52,860
‫Agora, neste caso

126
00:06:52,860 --> 00:06:55,870
‫específico aqui, existem maneiras de corrigir isso, mas

127
00:06:55,870 --> 00:06:58,903
‫são muito complicadas e não vale a pena persegui-las.

128
00:07:00,070 --> 00:07:02,810
‫E poderíamos, é claro, também escrever funções de

129
00:07:02,810 --> 00:07:05,370
‫validador que não dependem dessa variável.

130
00:07:05,370 --> 00:07:08,000
‫Portanto, neste caso, só precisamos dele porque

131
00:07:08,000 --> 00:07:11,363
‫estamos comparando um valor com o valor de outro campo.

132
00:07:14,150 --> 00:07:17,370
‫Este é um validador personalizado que podemos usar no Mongoose

133
00:07:17,370 --> 00:07:20,180
‫e que na verdade escrevemos nós mesmos.

134
00:07:20,180 --> 00:07:23,170
‫Mas também, há algumas bibliotecas no

135
00:07:23,170 --> 00:07:26,300
‫npm para validação de dados que podemos simplesmente

136
00:07:26,300 --> 00:07:30,183
‫conectar aqui como validadores personalizados que não temos que escrever.

137
00:07:31,394 --> 00:07:34,370
‫E a biblioteca mais popular é chamada de validador,

138
00:07:34,370 --> 00:07:36,883
‫então vamos dar uma olhada nela.

139
00:07:41,490 --> 00:07:44,520
‫Validator e, em seguida, estou pesquisando o

140
00:07:44,520 --> 00:07:48,620
‫GitHub porque geralmente todas essas bibliotecas estão sempre no GitHub.

141
00:07:48,620 --> 00:07:51,300
‫E a documentação também estará lá e

142
00:07:52,210 --> 00:07:53,660
‫aqui você vê que

143
00:07:55,060 --> 00:07:56,330
‫o validador

144
00:07:56,330 --> 00:07:59,773
‫é uma biblioteca de validadores e higienizadores de string.

145
00:08:01,155 --> 00:08:05,310
‫Você também vê que é bastante popular com 13,00 estrelas

146
00:08:05,310 --> 00:08:06,500
‫e isso

147
00:08:06,500 --> 00:08:08,033
‫é muito bom.

148
00:08:09,880 --> 00:08:11,830
‫Também vemos que esta biblioteca valida

149
00:08:11,830 --> 00:08:13,683
‫e limpa apenas strings.

150
00:08:15,562 --> 00:08:18,280
‫Aqui estão todas as coisas como o

151
00:08:18,280 --> 00:08:21,070
‫instalamos e como o usamos, mas é bem simples.

152
00:08:21,070 --> 00:08:22,655
‫Já sabemos disso.

153
00:08:22,655 --> 00:08:24,650
‫Mas o que quero mostrar a

154
00:08:24,650 --> 00:08:26,990
‫vocês é a lista de todos os validadores disponíveis.

155
00:08:26,990 --> 00:08:29,490
‫Por exemplo, temos isAlpha, que

156
00:08:29,490 --> 00:08:32,900
‫verifica se a string contém apenas letras.

157
00:08:32,900 --> 00:08:36,140
‫Temos alfanumérico, portanto, apenas letras e números, e realmente

158
00:08:36,980 --> 00:08:38,910
‫temos muitas coisas aqui.

159
00:08:38,910 --> 00:08:40,820
‫Portanto, verifique se uma string

160
00:08:40,820 --> 00:08:43,870
‫é booliana ou se a string é um cartão de crédito,

161
00:08:43,870 --> 00:08:46,160
‫portanto, um número de cartão de crédito válido.

162
00:08:46,160 --> 00:08:48,700
‫Ou se for uma moeda ou

163
00:08:48,700 --> 00:08:52,860
‫se você realmente ver todos os tipos de testes diferentes.

164
00:08:52,860 --> 00:08:56,783
‫Por exemplo, um ISBN, para verificar números de livros.

165
00:08:59,020 --> 00:09:02,683
‫Para testar se é um inteiro ou se a string está em minúsculas.

166
00:09:03,740 --> 00:09:07,050
‫E como você pode ver, sempre que precisar de alguma validação

167
00:09:07,050 --> 00:09:08,970
‫de dados, você pode pegar

168
00:09:08,970 --> 00:09:11,993
‫uma dessas bibliotecas e simplesmente conectá-las aos seus validadores Mongoose.

169
00:09:13,650 --> 00:09:15,560
‫Agora, muitas das coisas que

170
00:09:15,560 --> 00:09:17,800
‫estão aqui na verdade já estão

171
00:09:17,800 --> 00:09:20,810
‫integradas ao Mongoose e, portanto, não precisamos de todas

172
00:09:20,810 --> 00:09:23,010
‫elas, ok, mas há uma muito

173
00:09:23,010 --> 00:09:25,880
‫específica que desejo usar, que é o Alpha.

174
00:09:25,880 --> 00:09:30,290
‫Portanto, quero verificar se o nome do passeio contém apenas letras.

175
00:09:30,290 --> 00:09:32,200
‫E para isso posso usar esta

176
00:09:32,200 --> 00:09:33,963
‫função da biblioteca do validador.

177
00:09:35,940 --> 00:09:36,773
‫Vamos

178
00:09:38,804 --> 00:09:40,000
‫voltar e

179
00:09:41,660 --> 00:09:42,493
‫começar

180
00:09:42,493 --> 00:09:43,877
‫instalando o validador

181
00:09:43,877 --> 00:09:45,270
‫npm i (clacking

182
00:09:45,270 --> 00:09:46,163
‫de teclado).

183
00:09:52,614 --> 00:09:53,793
‫Isso foi um sucesso.

184
00:09:56,481 --> 00:09:57,931
‫Então eu preciso

185
00:10:01,430 --> 00:10:05,363
‫importá-lo aqui e agora estamos prontos para realmente usá-lo aqui.

186
00:10:07,380 --> 00:10:08,530
‫Vou usá-lo aqui

187
00:10:08,530 --> 00:10:10,790
‫e novamente, uso a propriedade validate e

188
00:10:12,510 --> 00:10:13,900
‫agora tudo que preciso

189
00:10:13,900 --> 00:10:16,253
‫fazer é realmente conectar a função aqui.

190
00:10:18,470 --> 00:10:21,350
‫E no validador funciona assim, onde

191
00:10:21,350 --> 00:10:23,530
‫validador é um objeto

192
00:10:23,530 --> 00:10:26,330
‫e aí temos todos esses métodos.

193
00:10:26,330 --> 00:10:27,560
‫Validator é Alpha,

194
00:10:27,560 --> 00:10:28,393
‫então esse

195
00:10:30,240 --> 00:10:31,073
‫é

196
00:10:31,073 --> 00:10:32,490
‫o que acabamos de

197
00:10:32,490 --> 00:10:33,783
‫escolher na documentação.

198
00:10:34,936 --> 00:10:36,090
‫E é isso mesmo.

199
00:10:36,090 --> 00:10:37,760
‫Portanto, não o chamamos aqui.

200
00:10:37,760 --> 00:10:39,900
‫Basicamente, apenas especificamos que esta

201
00:10:39,900 --> 00:10:42,780
‫é uma função que deve ser usada.

202
00:10:42,780 --> 00:10:45,920
‫Assim como o nosso, como o nosso validador, não

203
00:10:45,920 --> 00:10:46,830
‫o chamamos.

204
00:10:46,830 --> 00:10:48,870
‫Simplesmente colocamos esta função de retorno de

205
00:10:48,870 --> 00:10:49,970
‫chamada aqui, que

206
00:10:49,970 --> 00:10:52,153
‫será chamada assim que os dados forem validados.

207
00:10:54,527 --> 00:10:56,090
‫E aqui é o mesmo.

208
00:10:56,090 --> 00:10:58,490
‫Agora, se quisermos especificar uma mensagem de

209
00:10:58,490 --> 00:11:00,550
‫erro, funciona exatamente como aqui.

210
00:11:00,550 --> 00:11:04,180
‫Podemos especificar uma matriz e, em seguida, a mensagem de erro após a

211
00:11:04,180 --> 00:11:05,850
‫função de retorno de chamada.

212
00:11:05,850 --> 00:11:07,883
‫E poderíamos ter feito isso aqui.

213
00:11:09,120 --> 00:11:11,000
‫Então aqui nós fizemos de forma diferente.

214
00:11:11,000 --> 00:11:13,230
‫Aqui, criamos este novo objeto com

215
00:11:13,230 --> 00:11:16,010
‫o validador e a mensagem, mas poderíamos ter

216
00:11:16,010 --> 00:11:18,220
‫feito isso com um array também,

217
00:11:18,220 --> 00:11:20,183
‫mas isso pareceria estranho.

218
00:11:21,130 --> 00:11:23,830
‫Mas aqui em cima, como a função é tão

219
00:11:23,830 --> 00:11:26,540
‫pequena, então isso é tão pequeno, podemos simplesmente colocá-la aqui

220
00:11:26,540 --> 00:11:29,040
‫e, como um segundo argumento no array, adicionar

221
00:11:29,040 --> 00:11:30,463
‫a mensagem de erro.

222
00:11:32,640 --> 00:11:35,110
‫O nome do passeio

223
00:11:35,973 --> 00:11:39,310
‫deve conter apenas (barulho de teclado) personagens.

224
00:11:39,310 --> 00:11:41,053
‫Ótimo, verifique isso.

225
00:11:42,320 --> 00:11:47,053
‫De volta ao Postman, vamos nos livrar do nosso desconto no preço.

226
00:11:48,990 --> 00:11:51,290
‫E vamos adicionar alguns números aqui.

227
00:11:51,290 --> 00:11:53,140
‫E então isso deve falhar no

228
00:11:54,450 --> 00:11:57,433
‫teste e, de fato, o nome deve conter apenas caracteres.

229
00:11:59,760 --> 00:12:01,430
‫Vamos nos livrar disso.

230
00:12:01,430 --> 00:12:02,760
‫Também não podemos usar este nome.

231
00:12:02,760 --> 00:12:05,040
‫Já usamos antes,

232
00:12:05,040 --> 00:12:08,500
‫então pode ser escrito aqui também com

233
00:12:10,060 --> 00:12:13,503
‫caracteres e ainda obtemos esse erro aqui.

234
00:12:15,470 --> 00:12:18,830
‫Bem, isso é provavelmente por causa dos espaços.

235
00:12:18,830 --> 00:12:20,970
‫Então, vamos nos livrar dos espaços,

236
00:12:20,970 --> 00:12:23,900
‫o que obviamente não vai ser realmente útil

237
00:12:23,900 --> 00:12:25,910
‫e, na verdade, agora funciona.

238
00:12:25,910 --> 00:12:27,900
‫Então o problema eram os

239
00:12:27,900 --> 00:12:30,483
‫espaços, mas obviamente queremos manter os espaços aqui.

240
00:12:32,650 --> 00:12:36,400
‫Na verdade, esse erro de validação não é realmente útil e, portanto,

241
00:12:36,400 --> 00:12:37,993
‫vou me livrar dele.

242
00:12:39,340 --> 00:12:42,430
‫Considere que isso aqui foi apenas para demonstrar que

243
00:12:42,430 --> 00:12:45,030
‫podemos usar uma biblioteca externa como essa

244
00:12:45,030 --> 00:12:46,880
‫para realizar a validação.

245
00:12:46,880 --> 00:12:49,670
‫E, na verdade, ainda usaremos essa biblioteca um pouco

246
00:12:49,670 --> 00:12:53,390
‫mais tarde, quando verificarmos se o e-mail do usuário é realmente válido.

247
00:12:53,390 --> 00:12:54,860
‫Essa é outra

248
00:12:54,860 --> 00:12:56,873
‫função interessante incluída nesta biblioteca.

249
00:12:58,788 --> 00:13:00,290
‫Então, novamente, é assim que funciona.

250
00:13:00,290 --> 00:13:02,270
‫Não é realmente útil neste

251
00:13:02,270 --> 00:13:04,050
‫caso, portanto, se realmente

252
00:13:04,050 --> 00:13:08,160
‫quiséssemos testar se a string contém apenas letras e espaços,

253
00:13:08,160 --> 00:13:09,700
‫provavelmente seria

254
00:13:09,700 --> 00:13:12,250
‫mais simples usar uma expressão regular para

255
00:13:12,250 --> 00:13:14,153
‫testar esse tipo de padrão.

256
00:13:15,210 --> 00:13:16,500
‫Mas não vou

257
00:13:16,500 --> 00:13:18,410
‫fazer isso aqui porque esta palestra

258
00:13:18,410 --> 00:13:20,230
‫foi mais sobre esses validadores personalizados.

259
00:13:20,230 --> 00:13:23,810
‫De qualquer forma, com esta palestra, agora estamos prontos

260
00:13:23,810 --> 00:13:25,863
‫com a introdução ao Mongoose.

261
00:13:27,370 --> 00:13:29,500
‫Agora, como você pode imaginar, é claro

262
00:13:29,500 --> 00:13:31,530
‫que ainda há muito a aprender sobre

263
00:13:31,530 --> 00:13:34,540
‫o Mongoose e, na verdade, temos uma seção avançada do Mongoose

264
00:13:34,540 --> 00:13:36,010
‫um pouco mais tarde

265
00:13:36,010 --> 00:13:38,010
‫no curso e, claro, também nas outras

266
00:13:38,010 --> 00:13:39,710
‫seções, você continuará aprendendo mais e

267
00:13:39,710 --> 00:13:41,390
‫mais sobre como usar o

268
00:13:41,390 --> 00:13:43,183
‫Mongoose de uma forma realmente profissional.

269
00:13:44,380 --> 00:13:47,070
‫Você já aprendeu muito até este

270
00:13:47,070 --> 00:13:50,630
‫ponto, parabéns por ter chegado tão longe e é

271
00:13:50,630 --> 00:13:53,680
‫ótimo ver que você ainda está comigo aqui.

272
00:13:53,680 --> 00:13:56,913
‫Bom trabalho e espero vê-lo em breve.

