Data dos recados đź“…
O desafio
Num mural de recados cheio, dá vontade de saber quando cada recado foi postado. Cada cartão ganha a data e a hora em que o recado foi escrito, embaixo do nome de quem escreveu:
Adorei o workshop!
— Bia
05/10/2026 Ă s 11:53
Pense antes de programar
- Onde essa informação fica guardada? VocĂŞ precisa criar uma coluna nova? Lembre das colunas que o Rails cria sozinho, no capĂtulo Como guardar os recados?.
- Em que formato a data aparece no Brasil? Dia, mĂŞs e ano, em que ordem?
- O horário do app é o mesmo do seu relógio?
VocĂŞ vai praticar
- Usar uma informação que o Rails já guarda sozinho.
- Mudar o formato de uma data.
- Mudar uma configuração do app.
Tente resolver sem ajuda antes de abrir as dicas. Abra uma de cada vez, sĂł se precisar.
Dica 1: a data já existe
NĂŁo precisa de migration: o Rails guarda a data e a hora em que cada recado foi criado na coluna created_at, a mesma que o mural de recados usa para mostrar os mais novos primeiro.
No cartĂŁo de cada recado, na view, logo abaixo da linha da autora, acrescente:
<p class="is-size-7"><%= message.created_at %></p>
O is-size-7 Ă© do Bulma: deixa o texto pequeno. Recarregue e veja o que aparece.
Dica 2: o formato brasileiro
A data aparece num formato estranho, parecido com 2026-10-05 14:53:21 UTC. Para escolher o formato, use o strftime:
<p class="is-size-7"><%= message.created_at.strftime("%d/%m/%Y Ă s %H:%M") %></p>
Cada código com % vira um pedaço da data: %d é o dia, %m o mês, %Y o ano, %H a hora e %M os minutos. O resto, como as barras e o “à s”, aparece do jeito que está.
Dica 3: o horário certo
A hora está adiantada? O Rails usa o horário de Greenwich (o UTC do formato estranho), que fica 3 horas Ă frente do horário de BrasĂlia.
Abra o arquivo config/application.rb e procure a linha:
# config.time_zone = "Central Time (US & Canada)"
Troque por:
config.time_zone = "Brasilia"
Salve, desligue o servidor (Ctrl+C) e ligue de novo com bin/rails server: esse arquivo só é lido quando o servidor liga. Recarregue a página.
Indo além
- Mostre a data também na página de correção.
- Mostre “corrigido em…” nos recados que foram corrigidos. Dica: compare o
created_atcom oupdated_at.