Skip to content

Commit abb1a87

Browse files
committedOct 5, 2019
Adicionando criação de seeds para preencher o banco quando o codenvy salvar o snapshot
1 parent dd8f34e commit abb1a87

File tree

3 files changed

+60
-0
lines changed

3 files changed

+60
-0
lines changed
 

‎images/codenvy/new_command.png

199 KB
Loading

‎images/codenvy/save_command.png

68.5 KB
Loading

‎rails/criando_blog.md

+60
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,66 @@ $ rake db:migrate
6767
== 20171102171306 CreatePosts: migrated (0.0020s) =============================
6868
```
6969

70+
### Adicionando db:migrate nos comandos do Codenvy
71+
72+
Sempre que sua máquina ficar inativa por 10 minutos, será necessário repetir o `rake db:migrate` novamente. Além disso, quando ela fica inativa, ela não salva os posts que já foram criados. Ou seja, toda vez que tivermos que reanimar a máquina, teremos que executar o comando e não teremos mais os posts que criamos anteriormente. Para facilitar nossas vidas, vamos criar um comando para resolver este problema.
73+
74+
#### Criação dos `seeds`
75+
76+
Os seeds são uma ferramenta que utilizamos para preencher nosso banco de dados. Isto significa que podemos utilizá-los para gerar nossos posts automaticamente, sem precisarmos acessar o blog e adicionar manualmente cada post.
77+
78+
No arquivo `railsgirls/db/seeds.rb`, vamos adicionar o seguinte texto:
79+
80+
```
81+
Post.create!([{ title: 'Primeiro Post',
82+
text: 'Este é o primeiro post do blog!',
83+
author: 'Ana',
84+
created_date: DateTime.new(2019, 9, 30, 12, 0),
85+
published_date: DateTime.new(2019, 9, 30, 12, 0),
86+
created_at: DateTime.new(2019, 9, 30, 12, 0),
87+
updated_at: DateTime.new(2019, 9, 30, 12, 0)},
88+
{ title: 'Segundo Post',
89+
text: 'Este é o segundo post do blog e ele não foi publicado!',
90+
author: 'Bruna',
91+
created_date: DateTime.new(2019, 9, 30, 13, 0),
92+
published_date: DateTime.new(2019, 9, 30, 13, 0),
93+
created_at: DateTime.new(2019, 9, 30, 13, 0),
94+
updated_at: DateTime.new(2019, 9, 30, 13, 0)},
95+
{ title: 'Terceiro Post',
96+
text: 'Este é o terceiro post do blog!',
97+
author: 'Angela',
98+
created_date: DateTime.new(2019, 9, 30, 14, 0),
99+
published_date: DateTime.new(2019, 9, 30, 15, 0),
100+
created_at: DateTime.new(2019, 9, 30, 14, 0),
101+
updated_at: DateTime.new(2019, 9, 30, 14, 30)}
102+
])
103+
```
104+
105+
Estas várias linhas nada mais fazem do que criar três blog posts. Vamos salvar o `seeds.rb` e vamos criar os comandos necessários para executá-lo.
106+
107+
#### Criando o comando de execução
108+
109+
Para facilitar nossas vidas, vamos criar um novo comando no Codenvy só para popular nosso banco. Vamos acessar a aba `Commands` como mostra a figura abaixo. Vamos clicar no sinal de mais na aba de `run`e selecionar `Custom`.
110+
111+
![Criando um novo comando](../images/codenvy/new_command.png)
112+
113+
Uma nova tela como a da imagem abaixo aparecerá. Vamos adicionar um nome que indica que exatamente o que o comando faz: `preenchebanco`. Assim saberemos quando utilizá-lo. Em seguida, vamos preencher o comando com o seguinte texto:
114+
115+
```
116+
cd ${current.project.path}
117+
rails db:reset db:migrate db:seed
118+
```
119+
120+
Estas linhas significam que iremos para a pasta do projeto e executaremos:
121+
122+
* `rails db:reset`: o banco será limpo. Caso seja necessário apagar o que temos de posts existentes, poderemos utilizar este mesmo comando.
123+
* `rails db:migrate`: como já explicado acima.
124+
* `rails db:seed`: serão criados os posts que definimos no arquivo `seeds.rb`.
125+
126+
![Salvando um novo comando](../images/codenvy/save_command.png)
127+
128+
Agora vamos clicar em `SAVE` e poderemos utilizar o `preencherbanco` sempre que a máquina hibernar!
129+
70130
### Vamos ver o que aparece no navegador agora?
71131

72132
![Blog funcionando](../images/rails/rails_inicial.png)

0 commit comments

Comments
 (0)
Please sign in to comment.