1
00:00:03,900 --> 00:00:07,540
Vamos pescar no mercado de baixo.

2
00:00:07,540 --> 00:00:10,520
Começaremos com o Firebase,

3
00:00:10,520 --> 00:00:13,560
a oferta premium do Google.

4
00:00:13,560 --> 00:00:16,190
Vamos entender um pouco sobre o Firebase,

5
00:00:16,190 --> 00:00:19,375
configurar um servidor Firebase,

6
00:00:19,375 --> 00:00:22,340
e então vamos olhar

7
00:00:22,340 --> 00:00:24,790
para o aplicativo angular, que eu vou retrofit com base

8
00:00:24,790 --> 00:00:29,340
no aplicativo angular anterior que você viu na palestra anterior.

9
00:00:29,340 --> 00:00:34,890
Vamos modificá-lo para fazer uso do Firebase como o backend.

10
00:00:34,890 --> 00:00:38,890
Assim, como poderíamos ver no final desta lição,

11
00:00:38,890 --> 00:00:41,440
este exercício e o seguinte exercício,

12
00:00:41,440 --> 00:00:46,600
podemos facilmente pegar um aplicativo angular e reajustá-lo para fazer uso do

13
00:00:46,600 --> 00:00:52,245
Firebase como o backend como um provedor de serviços.

14
00:00:52,245 --> 00:00:54,612
Para começar a jornada,

15
00:00:54,612 --> 00:01:00,725
vamos até firebase.google.com para entender um pouco sobre o Firebase.

16
00:01:00,725 --> 00:01:04,635
Uma espécie de tópico de fazer uma apresentação completa sobre o Firebase,

17
00:01:04,635 --> 00:01:06,550
eu vou rapidamente executá-lo através do que foi

18
00:01:06,550 --> 00:01:09,370
explicado no próprio site Firebase porque eles fornecem

19
00:01:09,370 --> 00:01:15,125
detalhes suficientes sobre como o próprio Firebase suporta vários recursos.

20
00:01:15,125 --> 00:01:19,810
Então vamos percorrer este site para entender como o Firebase funciona.

21
00:01:19,810 --> 00:01:22,480
Então, se você acessar o site, como você pode ver,

22
00:01:22,480 --> 00:01:27,955
ele diz que o Firebase ajuda você a criar aplicativos móveis melhores e expandir seus negócios.

23
00:01:27,955 --> 00:01:30,750
E então, como você vê aqui,

24
00:01:30,750 --> 00:01:36,280
ele explica os detalhes sobre como ele permite que você crie seus aplicativos

25
00:01:36,280 --> 00:01:41,641
rapidamente sem precisar gerenciar a infraestrutura de back-end para seu aplicativo,

26
00:01:41,641 --> 00:01:46,875
e um único console que reúne vários produtos que funcionam juntos.

27
00:01:46,875 --> 00:01:56,305
Então, esses são todos os produtos oferecidos pelo Google que funcionam juntos para atender às suas necessidades de back-end.

28
00:01:56,305 --> 00:02:00,010
E também aqui, você pode aproveitar

29
00:02:00,010 --> 00:02:03,585
muitos dos produtos complementares que estão disponíveis no Google.

30
00:02:03,585 --> 00:02:06,055
Então, em particular, neste exercício,

31
00:02:06,055 --> 00:02:09,620
estaremos aproveitando o Cloud Firestore,

32
00:02:09,620 --> 00:02:12,775
a nova provisão do Google.

33
00:02:12,775 --> 00:02:15,740
Analisaremos mais detalhes sobre isso mais tarde.

34
00:02:15,740 --> 00:02:18,520
Analisamos como podemos usar o suporte de autenticação

35
00:02:18,520 --> 00:02:22,030
fornecido pelo Firebase para autenticar usuários.

36
00:02:22,030 --> 00:02:27,880
Analisaremos o armazenamento em nuvem para armazenar nossos arquivos de imagem e distribuí-los.

37
00:02:27,880 --> 00:02:34,650
E então também veremos como podemos aproveitar tudo isso junto com

38
00:02:34,650 --> 00:02:41,170
o módulo de nó relacionado ao Firebase-que podemos incorporar junto com o módulo de

39
00:02:41,170 --> 00:02:46,270
nó angularfire2 em nosso aplicativo angular para que

40
00:02:46,270 --> 00:02:51,910
possamos nos comunicar com nosso backend Firebase como um serviço.

41
00:02:51,910 --> 00:02:55,300
Além disso, olhando mais detalhadamente,

42
00:02:55,300 --> 00:02:58,390
vemos como o

43
00:02:58,390 --> 00:03:04,525
traço Firebase em si fornece vários recursos, como permitir que você implemente

44
00:03:04,525 --> 00:03:11,200
diferentes recursos de usuário para integração diferente de seu aplicativo e

45
00:03:11,200 --> 00:03:17,590
como é fácil integrar seu backend com um iOS,

46
00:03:17,590 --> 00:03:20,110
Android ou o aplicativo web .

47
00:03:20,110 --> 00:03:26,305
Em particular, vamos olhar para a aplicação web e usando JavaScript e

48
00:03:26,305 --> 00:03:29,290
também o uso de como vamos

49
00:03:29,290 --> 00:03:33,610
incorporar isso em nossa aplicação angular um pouco mais tarde.

50
00:03:33,610 --> 00:03:39,900
Além disso, o Firebase fornece um banco de dados em

51
00:03:39,900 --> 00:03:42,850
tempo real, tanto o banco de dados original em tempo real,

52
00:03:42,850 --> 00:03:45,040
como o novo Cloud Firestone,

53
00:03:45,040 --> 00:03:50,905
permitem sincronizar automaticamente os dados entre vários dispositivos do usuário.

54
00:03:50,905 --> 00:03:52,900
Portanto, quaisquer alterações feitas

55
00:03:52,900 --> 00:03:59,625
no lado do servidor serão automaticamente refletidas para todos os clientes

56
00:03:59,625 --> 00:04:06,996
e, claro, você pode ler mais detalhes sobre o Firebase neste site.

57
00:04:06,996 --> 00:04:13,885
E é muito fácil começar porque a oferta básica é gratuita para os usuários.

58
00:04:13,885 --> 00:04:17,854
Então vamos começar a usar o Firebase.

59
00:04:17,854 --> 00:04:25,085
Vamos configurar nossa conta do Firebase e, em seguida, acessar e configurar nosso back-end como um servidor,

60
00:04:25,085 --> 00:04:29,025
que então aproveitaremos de nosso aplicativo angular.

61
00:04:29,025 --> 00:04:31,995
Então este é um passeio rápido pelo Firebase,

62
00:04:31,995 --> 00:04:34,880
mas em vez de apenas olhar para eles,

63
00:04:34,880 --> 00:04:38,665
vamos entrar e realmente sujar nossas mãos,

64
00:04:38,665 --> 00:04:41,970
configurando uma base Firebase de

65
00:04:41,970 --> 00:04:45,900
volta para o serviço e, em seguida, usá-lo em nosso aplicativo angular.

66
00:04:45,900 --> 00:04:47,593
Então, para começar,

67
00:04:47,593 --> 00:04:49,910
como você vai ver para a borda direita aqui,

68
00:04:49,910 --> 00:04:51,510
ele diz ir para o console.

69
00:04:51,510 --> 00:04:56,705
Obviamente, você deve ter uma conta do Google para poder usar o Firebase.

70
00:04:56,705 --> 00:04:58,264
Escusado será dizer,

71
00:04:58,264 --> 00:05:00,380
e você deve estar conectado à sua conta do Google.

72
00:05:00,380 --> 00:05:01,640
Então, como você pode ver,

73
00:05:01,640 --> 00:05:03,225
eu já estou na minha conta do Google.

74
00:05:03,225 --> 00:05:05,080
Então isso vai me dar acesso ao meu console.

75
00:05:05,080 --> 00:05:06,857
Se você não estiver conectado,

76
00:05:06,857 --> 00:05:09,871
então é melhor fazer login na sua conta do Google.

77
00:05:09,871 --> 00:05:12,150
Então, quando você for para o console,

78
00:05:12,150 --> 00:05:18,620
isso o levará ao console de serviços do Firebase aqui,

79
00:05:18,620 --> 00:05:22,335
onde você pode configurar projetos.

80
00:05:22,335 --> 00:05:23,825
Então, quando você vai para o console,

81
00:05:23,825 --> 00:05:26,460
como você pode ver, ele diz adicionar um projeto.

82
00:05:26,460 --> 00:05:27,605
E, como você pode ver,

83
00:05:27,605 --> 00:05:30,675
eu já tentei configurar

84
00:05:30,675 --> 00:05:35,750
outro projeto Firebase antes de explicar para você.

85
00:05:35,750 --> 00:05:38,190
Então vamos montar um projeto aqui.

86
00:05:38,190 --> 00:05:41,065
Então, vamos clicar no projeto add,

87
00:05:41,065 --> 00:05:46,865
e isso deve trazer uma pequena janela agradável,

88
00:05:46,865 --> 00:05:48,765
onde você pode digitar informações.

89
00:05:48,765 --> 00:05:53,750
Então vamos chamar este projeto como ConfusionServer,

90
00:05:53,750 --> 00:06:00,793
como você esperaria e configurá-lo para onde quer que você esteja no momento.

91
00:06:00,793 --> 00:06:06,615
Então eu vou configurá-lo para usar

92
00:06:06,615 --> 00:06:15,194
Hong Kong e criar um projeto.

93
00:06:15,194 --> 00:06:17,850
E uma vez que seu projeto é criado,

94
00:06:17,850 --> 00:06:21,575
isso é o que você será apresentado pelo Firebase.

95
00:06:21,575 --> 00:06:28,980
E, aqui, você veria que a primeira coisa que você gostaria de pegar

96
00:06:28,980 --> 00:06:32,430
são informações sobre sua configuração do Firebase para

97
00:06:32,430 --> 00:06:36,670
que você possa usá-lo dentro de seu aplicativo angular.

98
00:06:36,670 --> 00:06:37,950
Então, para fazer isso,

99
00:06:37,950 --> 00:06:40,985
clique neste botão aqui.

100
00:06:40,985 --> 00:06:44,085
É o que diz, adicione o Firebase ao seu aplicativo web.

101
00:06:44,085 --> 00:06:47,730
E isso irá fornecer-lhe um monte de informações que

102
00:06:47,730 --> 00:06:51,750
você deve copiar e salvar porque eu vou estar

103
00:06:51,750 --> 00:06:54,585
fazendo uso desta informação para configurar

104
00:06:54,585 --> 00:07:00,045
minha aplicação angular um pouco mais tarde no próximo exercício.

105
00:07:00,045 --> 00:07:04,440
Portanto, salve essas informações em um local conveniente para que você

106
00:07:04,440 --> 00:07:10,350
possa fazer uso dessas informações ao configurar o site do seu cliente.

107
00:07:10,350 --> 00:07:14,310
No próximo passo, vou criar um par de contas aqui.

108
00:07:14,310 --> 00:07:17,235
Então deixe-me clicar na autenticação aqui.

109
00:07:17,235 --> 00:07:20,655
E quando a autenticação for ativada,

110
00:07:20,655 --> 00:07:27,060
configuraremos os métodos de login que usaremos para nosso servidor Firebase

111
00:07:27,060 --> 00:07:29,865
e, no meu caso,

112
00:07:29,865 --> 00:07:38,520
usarei a senha de e-mail como uma das opções.

113
00:07:38,520 --> 00:07:41,080
Então, vamos ativar a senha de e-mail.

114
00:07:41,080 --> 00:07:45,095
Também habilitarei o login no Google.

115
00:07:45,095 --> 00:07:46,560
Então esses dois estão habilitados.

116
00:07:46,560 --> 00:07:55,000
Se desejar, você pode habilitar outras maneiras de autenticar os usuários.

117
00:07:55,000 --> 00:07:57,705
Em seguida, indo para os usuários, agora,

118
00:07:57,705 --> 00:08:02,895
se você entrar neste aplicativo com sua conta do Google,

119
00:08:02,895 --> 00:08:07,812
esse usuário será automaticamente adicionado ao seu sistema.

120
00:08:07,812 --> 00:08:13,610
Mas agora, vou configurar um usuário com um e-mail e senha.

121
00:08:13,610 --> 00:08:21,195
Então vou configurar um admin@confusion.net,

122
00:08:21,195 --> 00:08:31,105
e vou configurar uma senha aqui e adicionar o usuário.

123
00:08:31,105 --> 00:08:34,385
Portanto, este será um usuário,

124
00:08:34,385 --> 00:08:38,630
que pode entrar com a combinação de e-mail-senha.

125
00:08:38,630 --> 00:08:45,285
Também podemos nos cadastrar para acessar isso usando nossa Conta do Google.

126
00:08:45,285 --> 00:08:47,690
Então, meu aplicativo angular,

127
00:08:47,690 --> 00:08:51,770
eu vou configurar para usar tanto a maneira de senha de e-mail de entrar

128
00:08:51,770 --> 00:08:56,215
e, bem como por login baseado em conta do Google.

129
00:08:56,215 --> 00:09:00,700
Depois disso, vamos para o armazenamento.

130
00:09:00,700 --> 00:09:03,620
Então vamos configurar o armazenamento em seguida.

131
00:09:03,620 --> 00:09:09,650
Portanto, o armazenamento é onde você pode configurar uma maneira

132
00:09:09,650 --> 00:09:18,035
de carregar arquivos para o seu servidor e, em seguida, torná-los disponíveis para uso.

133
00:09:18,035 --> 00:09:22,084
Então este armazenamento, eu vou configurar meu armazenamento para armazenar

134
00:09:22,084 --> 00:09:28,073
as imagens que vamos usar e salvar do nosso site de servidor.

135
00:09:28,073 --> 00:09:30,025
Então, quando você configura o armazenamento,

136
00:09:30,025 --> 00:09:33,590
ele aparecerá com o conjunto de regras de segurança,

137
00:09:33,590 --> 00:09:38,880
que especificam que tipo de operações serão permitidas pelo usuário.

138
00:09:38,880 --> 00:09:40,400
Então diz allow read,

139
00:09:40,400 --> 00:09:44,355
write: if request.auth não é igual a null, o

140
00:09:44,355 --> 00:09:47,650
que significa que somente os usuários que fizeram

141
00:09:47,650 --> 00:09:52,377
login neste servidor poderão ler e gravar.

142
00:09:52,377 --> 00:09:59,270
Agora, eu vou mudar isso para permitir leituras para qualquer pessoa,

143
00:09:59,270 --> 00:10:06,035
mas as gravações serão permitidas apenas por usuários autenticados.

144
00:10:06,035 --> 00:10:07,675
Então vamos dizer, entendi,

145
00:10:07,675 --> 00:10:12,348
e então eu vou começar.

146
00:10:12,348 --> 00:10:13,845
Então, nas regras,

147
00:10:13,845 --> 00:10:18,705
vou entrar nas regras aqui e depois modificar as regras para

148
00:10:18,705 --> 00:10:24,845
permitir que os usuários possam ler a partir do servidor.

149
00:10:24,845 --> 00:10:29,590
Agora, podemos configurá-lo em nível de pasta específica,

150
00:10:29,590 --> 00:10:31,620
mas como este é um aplicativo simples,

151
00:10:31,620 --> 00:10:36,590
vou configurá-lo em todo o nível de armazenamento.

152
00:10:36,590 --> 00:10:39,325
Então, aqui, eu vou dizer, permitir leitura,

153
00:10:39,325 --> 00:10:43,403
e então eu vou modificar esta regra para dizer permitir leitura,

154
00:10:43,403 --> 00:10:48,670
e eu vou dizer, permitir gravação se solicitação.

155
00:10:48,670 --> 00:10:50,700
Então, como você pode ver,

156
00:10:50,700 --> 00:10:53,995
os usuários terão permissão para ler do armazenamento.

157
00:10:53,995 --> 00:10:57,165
Qualquer usuário terá permissão para ler, mesmo sem autenticação,

158
00:10:57,165 --> 00:11:02,750
mas a escrita é restrita apenas aos usuários que fazem login no sistema.

159
00:11:02,750 --> 00:11:06,750
Então esta é uma simples modificação das regras de acesso,

160
00:11:06,750 --> 00:11:08,180
das regras de segurança.

161
00:11:08,180 --> 00:11:10,410
Você pode ser mais elaborado sobre isso,

162
00:11:10,410 --> 00:11:11,830
mas no exemplo simples,

163
00:11:11,830 --> 00:11:13,170
eu vou ficar com isso.

164
00:11:13,170 --> 00:11:18,451
E então publicaremos essas regras no nosso servidor.

165
00:11:18,451 --> 00:11:23,600
Em seguida, voltando para os arquivos, nos arquivos,

166
00:11:23,600 --> 00:11:30,895
eu vou criar uma nova pasta aqui chamada imagens.

167
00:11:30,895 --> 00:11:33,760
Agora, como você pode ver,

168
00:11:33,760 --> 00:11:37,450
as regras podem ser configuradas para esta pasta de imagens específica,

169
00:11:37,450 --> 00:11:42,430
então ele permitirá que os usuários leiam somente a partir dessas pastas de imagens e, em seguida, somente

170
00:11:42,430 --> 00:11:47,830
usuários autorizados a fazer upload para esta pasta de imagens, se assim o desejar.

171
00:11:47,830 --> 00:11:50,150
Mas, agora, vou deixá-lo como tal,

172
00:11:50,150 --> 00:11:53,780
como o conjunto genérico de regra que configurei lá.

173
00:11:53,780 --> 00:11:56,705
Agora, indo para a pasta de imagens.

174
00:11:56,705 --> 00:12:03,005
Vou enviar um monte de imagens para esta pasta aqui.

175
00:12:03,005 --> 00:12:10,445
Então deixe-me pegar um monte de imagens que eu tenho para a minha aplicação.

176
00:12:10,445 --> 00:12:19,915
E então, anteriormente, eu tinha usado essas imagens em meus outros aplicativos.

177
00:12:19,915 --> 00:12:29,855
Vou selecionar todas essas imagens e depois enviá-las para o armazenamento do Google aqui.

178
00:12:29,855 --> 00:12:34,680
Essas imagens estão disponíveis em

179
00:12:34,680 --> 00:12:39,615
seu arquivo images.zip que eu forneci no exercício anterior,

180
00:12:39,615 --> 00:12:41,163
na lição anterior.

181
00:12:41,163 --> 00:12:43,395
Então, basta baixar o arquivo images.zip,

182
00:12:43,395 --> 00:12:44,910
ou se você já baixou,

183
00:12:44,910 --> 00:12:48,720
você deve ter essas imagens com você para que você possa enviá-las para o arquivo.

184
00:12:48,720 --> 00:12:50,303
Quando você carregar essas imagens,

185
00:12:50,303 --> 00:12:56,215
você pode clicar em qualquer uma dessas imagens e também notar que abaixo,

186
00:12:56,215 --> 00:12:59,135
ele lhe dá esta localização de arquivo.

187
00:12:59,135 --> 00:13:05,755
Você precisa copiar este URL para este local de arquivo porque quando configuramos nosso banco de dados,

188
00:13:05,755 --> 00:13:10,785
no campo de imagens de nossos dados JSON,

189
00:13:10,785 --> 00:13:17,525
vamos configurar cada um deles com este URL para a imagem correspondente.

190
00:13:17,525 --> 00:13:21,315
Em seguida, vamos passar para esse banco de dados.

191
00:13:21,315 --> 00:13:25,975
No banco de dados, você tem duas opções.

192
00:13:25,975 --> 00:13:28,970
Você pode usar o banco de dados em tempo real mais antigo,

193
00:13:28,970 --> 00:13:31,375
que é suportado pelo Google,

194
00:13:31,375 --> 00:13:37,065
e na verdade a maioria dos aplicativos atuais que usam o Firebase usará o banco de dados em tempo real.

195
00:13:37,065 --> 00:13:38,820
Mas então, neste curso,

196
00:13:38,820 --> 00:13:43,420
vamos explorar o mais novo Firestore beta.

197
00:13:43,420 --> 00:13:50,450
O Firestore beta fornece um banco de dados em tempo real muito mais abrangente.

198
00:13:50,450 --> 00:13:55,110
Portanto, este é o banco de dados em tempo real da próxima geração e fornece

199
00:13:55,110 --> 00:13:59,310
maneiras muito mais avançadas de fazer consultas e

200
00:13:59,310 --> 00:14:04,320
escalar automaticamente seu armazenamento para nós.

201
00:14:04,320 --> 00:14:07,260
Então vamos com o Firestore beta.

202
00:14:07,260 --> 00:14:09,870
Agora, uma das razões novamente para eu começar com

203
00:14:09,870 --> 00:14:14,340
o Firestore beta é simplesmente porque ele

204
00:14:14,340 --> 00:14:23,250
nos permite armazenar as informações na forma de documentos e coleções.

205
00:14:23,250 --> 00:14:25,770
Agora, a partir da nossa experiência com o MongoDB,

206
00:14:25,770 --> 00:14:28,988
já sabemos como funcionam os documentos

207
00:14:28,988 --> 00:14:33,630
e as coleções, e é por isso que o Firestore beta é uma escolha muito melhor para nós,

208
00:14:33,630 --> 00:14:37,275
já que já sabemos como isso é configurado.

209
00:14:37,275 --> 00:14:39,900
Se você quiser usar o padrão do banco de dados em tempo real padrão,

210
00:14:39,900 --> 00:14:41,280
você pode optar por fazê-lo.

211
00:14:41,280 --> 00:14:44,040
Mas o banco de dados em tempo real armazena todos os seus dados em

212
00:14:44,040 --> 00:14:51,272
uma árvore grande e tem uma quantidade limitada de capacidade de consulta.

213
00:14:51,272 --> 00:14:56,315
Então, para as regras de segurança para o meu Firestore,

214
00:14:56,315 --> 00:14:59,970
eu vou usar o modo de teste,

215
00:14:59,970 --> 00:15:05,955
onde eu vou deixá-lo aberto para que as pessoas leiam e escrevam no momento.

216
00:15:05,955 --> 00:15:11,790
E isso é bom, porque estamos apenas testando o banco de dados, mas normalmente,

217
00:15:11,790 --> 00:15:20,245
eu sugiro usar uma maneira mais configurada de trabalhar com seu banco de dados aqui.

218
00:15:20,245 --> 00:15:23,171
Então vamos começar com um modo de teste para começar.

219
00:15:23,171 --> 00:15:27,165
E então vamos definir as regras de segurança como esta para começar.

220
00:15:27,165 --> 00:15:31,280
Você pode usar uma configuração de ferramenta de segurança mais elaborada.

221
00:15:31,280 --> 00:15:34,710
Então, como você viu com o armazenamento,

222
00:15:34,710 --> 00:15:37,255
nós tínhamos configurado de tal forma que as leituras são permitidas por

223
00:15:37,255 --> 00:15:40,620
qualquer pessoa, mas as gravações são permitidas apenas por usuários autorizados.

224
00:15:40,620 --> 00:15:44,790
Podemos configurar uma funcionalidade semelhante aqui também.

225
00:15:44,790 --> 00:15:47,355
Então este é o servidor de confusões.

226
00:15:47,355 --> 00:15:49,590
E então, nas regras,

227
00:15:49,590 --> 00:15:56,160
deixe-me ir para esse depósito e então apenas copie a regra do armazenamento aqui,

228
00:15:56,160 --> 00:16:01,020
e vamos configurar o mesmo tipo de restrição aqui.

229
00:16:01,020 --> 00:16:04,725
Assim, permitiremos que qualquer pessoa leia, mas apenas

230
00:16:04,725 --> 00:16:11,420
usuários autorizados a escrever no banco de dados.

231
00:16:11,420 --> 00:16:15,075
Então, voltando para o banco de dados, nas regras,

232
00:16:15,075 --> 00:16:25,688
podemos dizer permitir ler: e então a segunda linha eu vou substituir isso,

233
00:16:25,688 --> 00:16:29,620
dizendo permitir escrever se request.auth não é igual a null.

234
00:16:29,620 --> 00:16:32,535
Assim, apenas as pessoas que estão logadas

235
00:16:32,535 --> 00:16:36,540
poderão fazer modificações nos dados para que,

236
00:16:36,540 --> 00:16:41,441
pelo menos, tenhamos alguma proteção nos meus dados.

237
00:16:41,441 --> 00:16:48,900
Agora, aqui, podemos adicionar graficamente os dados à nossa aplicação.

238
00:16:48,900 --> 00:16:54,791
E isso, eu acho a maneira mais rápida de adicionar os dados.

239
00:16:54,791 --> 00:16:57,270
Se você configurar o site do cliente,

240
00:16:57,270 --> 00:17:00,380
você pode postar dados do site do cliente também, mas

241
00:17:00,380 --> 00:17:04,780
, agora, iniciaremos adicionando três coleções aqui.

242
00:17:04,780 --> 00:17:10,535
Então, a primeira coleção que vou somar é pratos.

243
00:17:10,535 --> 00:17:14,800
E podemos adicionar documentos aos pratos, para

244
00:17:14,800 --> 00:17:17,400
que possamos adicionar nosso primeiro documento.

245
00:17:17,400 --> 00:17:19,405
Então, para adicionar um documento aos pratos,

246
00:17:19,405 --> 00:17:23,005
lembre-se que eu lhe dei o arquivo db.json lá.

247
00:17:23,005 --> 00:17:27,085
Então você pode ir com o arquivo db.json e, em seguida, adicionar,

248
00:17:27,085 --> 00:17:31,665
passo a passo, cada um dos pratos que temos.

249
00:17:31,665 --> 00:17:36,350
Então, aqui, eu vou configurar o primeiro prato aqui.

250
00:17:36,350 --> 00:17:44,895
Assim, para o prato, podemos permitir que o Firebase atribua automaticamente o ID para o nosso documento.

251
00:17:44,895 --> 00:17:48,010
Então vou deixar que atribua automaticamente.

252
00:17:48,010 --> 00:17:52,660
Então vamos adicionar no primeiro prato aqui.

253
00:17:52,660 --> 00:18:01,200
O nome do campo e o primeiro prato aqui.

254
00:18:01,200 --> 00:18:03,633
Então nós temos que cuidadosamente adicionar,

255
00:18:03,633 --> 00:18:07,099
pouco a pouco, cada um dos pratos aqui.

256
00:18:07,099 --> 00:18:09,205
Então vamos dizer nome,

257
00:18:09,205 --> 00:18:16,327
e então vamos dizer categoria, que é rede elétrica.

258
00:18:16,327 --> 00:18:21,935
E então vamos adicionar na imagem,

259
00:18:21,935 --> 00:18:26,450
que eu vou voltar e adicionar em um pouco mais tarde porque eu preciso copiar

260
00:18:26,450 --> 00:18:32,250
o URL da imagem do meu armazenamento e usá-lo aqui.

261
00:18:32,250 --> 00:18:48,138
Então vamos tê-lo rotulado como Hot, preço.

262
00:18:48,138 --> 00:18:51,505
Então temos categoria,

263
00:18:51,505 --> 00:18:55,240
nome, categoria, imagem, rótulo, preço,

264
00:18:55,240 --> 00:19:02,310
descrição, que eu vou copiar e colar do meu arquivo db.json.

265
00:19:02,310 --> 00:19:07,325
E, finalmente, a bandeira em destaque,

266
00:19:07,325 --> 00:19:13,587
que eu vou definir como um booleano e definir isso como verdadeiro neste caso.

267
00:19:13,587 --> 00:19:20,135
Então este será o nosso primeiro documento que vamos adicionar em nosso banco de dados aqui.

268
00:19:20,135 --> 00:19:22,705
Então você notaria imediatamente que,

269
00:19:22,705 --> 00:19:26,570
em nosso banco de dados, o primeiro documento é adicionado.

270
00:19:26,570 --> 00:19:29,815
Então vamos ver pratos e o primeiro documento,

271
00:19:29,815 --> 00:19:35,900
e você pode ver as informações sobre este documento configurado aqui.

272
00:19:35,900 --> 00:19:38,695
Então temos categoria, descrição,

273
00:19:38,695 --> 00:19:44,355
destaque, imagem, rótulo, nome e preço.

274
00:19:44,355 --> 00:19:49,360
Nós também adicionaremos mais um campo aqui chamado CreateDAT,

275
00:19:49,360 --> 00:19:54,175
e este será um carimbo de data/hora.

276
00:19:54,175 --> 00:20:00,870
E o carimbo de data/hora seria hoje e então eu deixo lá o valor de tempo como tal.

277
00:20:00,870 --> 00:20:04,772
Então, podemos adicionar carimbos de data/hora também a isso, e, também,

278
00:20:04,772 --> 00:20:14,855
adicionaremos mais um carimbo de data/hora como UpdateDAT e com o carimbo de data/hora aqui.

279
00:20:14,855 --> 00:20:17,145
Então temos mais dois carimbos de data/hora aqui.

280
00:20:17,145 --> 00:20:18,730
Agora, para a imagem,

281
00:20:18,730 --> 00:20:21,375
vamos para o depósito aqui.

282
00:20:21,375 --> 00:20:25,230
E a partir do nosso armazenamento, nas imagens,

283
00:20:25,230 --> 00:20:31,070
vamos selecionar o arquivo de imagem aqui

284
00:20:31,070 --> 00:20:36,790
e, em seguida, ir para o local do arquivo e, em seguida, copiar este URL aqui.

285
00:20:36,790 --> 00:20:38,795
Então, se nós apenas clicar sobre

286
00:20:38,795 --> 00:20:40,880
isso, esse URL será copiado.

287
00:20:40,880 --> 00:20:42,050
Então vamos voltar para

288
00:20:42,050 --> 00:20:49,715
esse banco de dados e, em seguida,

289
00:20:49,715 --> 00:20:53,975
editar o campo de imagem e, em seguida, adicionar esse URL lá.

290
00:20:53,975 --> 00:20:58,085
Assim, você pode ir em frente e adicionar os pratos restantes,

291
00:20:58,085 --> 00:21:02,120
as promoções e também os líderes.

292
00:21:02,120 --> 00:21:04,280
Então, uma vez que você concluir todas as etapas, o

293
00:21:04,280 --> 00:21:08,700
que levará algum tempo para você fazer passo a passo.

294
00:21:08,700 --> 00:21:13,620
Deixei você terminar de adicionar toda essa informação à sua base.

295
00:21:13,620 --> 00:21:18,045
Então, depois de completar inserindo todos os dados em seu banco de dados,

296
00:21:18,045 --> 00:21:21,675
seus pratos devem ter quatro pratos aqui.

297
00:21:21,675 --> 00:21:26,660
Novamente, certifique-se de inicializar

298
00:21:26,660 --> 00:21:33,166
o campo de imagem com o URL desse armazenamento para essa imagem específica.

299
00:21:33,166 --> 00:21:40,565
Então você terá um, dois, três e quatro pratos.

300
00:21:40,565 --> 00:21:43,805
Então você terá quatro líderes correspondentemente.

301
00:21:43,805 --> 00:21:50,860
Um, dois, três e quatro e uma promoção está aqui.

302
00:21:50,860 --> 00:21:54,590
Novamente, certifique-se de inicializar as imagens para cada uma

303
00:21:54,590 --> 00:21:58,940
delas adequadamente no armazenamento do Firebase.

304
00:21:58,940 --> 00:22:02,375
Com isso, nosso servidor está completamente configurado.

305
00:22:02,375 --> 00:22:10,100
Portanto, nosso servidor Firebase tem todos os dados necessários para que ele atenda aos nossos planos.

306
00:22:10,100 --> 00:22:13,595
Agora vamos passar para o próximo exercício,

307
00:22:13,595 --> 00:22:18,725
onde vamos configurar nosso cliente angular para poder acessar

308
00:22:18,725 --> 00:22:22,370
esse backend Firebase como um serviço e, em seguida, recuperar

309
00:22:22,370 --> 00:22:26,469
dados e, em seguida, enviar dados para seu servidor Firebase.

310
00:22:26,469 --> 00:22:29,440
Com isso, completamos este exercício.

311
00:22:29,440 --> 00:22:33,110
Neste exercício, vimos como é fácil

312
00:22:33,110 --> 00:22:37,100
configurar nosso back-end do Firebase como um serviço para autenticação,

313
00:22:37,100 --> 00:22:43,520
armazenar arquivos e distribuí-los e também armazenar informações no

314
00:22:43,520 --> 00:22:51,410
banco de dados do Cloud Firestore na forma de coleções e documentos dentro de coleções.

315
00:22:51,410 --> 00:22:55,180
Com isso, completamos este exercício.