Scaffold: o que um comando gera

Prévia grátis 3 min de leitura

Oito cursos, um resource, construído à mão

Levar Article do zero a uma feature funcionando exigiu oito cursos. Houve uma migration (Migrations ActiveRecord), um model com uma validação (ActiveRecord: introdução ao model) e um controller com index, show, new e create (Controller: ações). Depois vieram um article_params seguro (Parâmetros e segurança), views em ERB (ActionView: templates), um partial reutilizável (Partials ActionView), um formulário form_with model: @article (Formulários Rails: form_with) e uma linha resources :articles (Rotas Rails: fundamentos). Cada peça foi escrita à mão de propósito, para ser entendida sozinha.

O comando que pula tudo isso

bin/rails generate scaffold Article title:string body:text published_at:datetime

Uma linha. Rode uma vez e toda peça acima passa a existir, gerada junto. São a migration, o model, um controller com as sete actions RESTful, as views e a entrada nas rotas.

Por que "scaffold" é a palavra certa

Um andaime de obra é uma estrutura temporária, montada rápido para os operários alcançarem o prédio de verdade e começarem a trabalhar nele. Não é o prédio. O gerador scaffold do Rails pega esse nome de propósito. O que ele produz é uma feature real, que roda, mas genérica. É um ponto de partida em que o desenvolvedor se apoia e que termina, não um produto para publicar como saiu. A aula 6 trata do que terminar envolve.

O que é gerado

db/migrate/<timestamp>_create_articles.rb    a tabela
app/models/article.rb                         o model
app/controllers/articles_controller.rb        as 7 actions
app/views/articles/*.html.erb                 4 views e 2 partials
config/routes.rb                              resources :articles acrescentado
test/models/article_test.rb                   um teste de model
test/fixtures/articles.yml                    dados de teste
test/controllers/articles_controller_test.rb  um teste de controller
app/helpers/articles_helper.rb                um helper vazio

A aula 2 roda esse comando numa app Rails descartável e mostra que esta lista é o que o próprio gerador imprime enquanto roda.

O que este curso cobre

  1. Rodar o gerador numa app de rascunho e ler a saída do terminal.
  2. A migration e o model gerados, ligados aos cursos que ensinaram cada um à mão.
  3. As sete actions do controller gerado: quatro conhecidas, três novas.
  4. As views geradas, e como o "genérico" aparece no ERB gerado.
  5. Quando o scaffolding vale a pena, e o que o código gerado precisa antes de ir ao ar.
  6. O comando inteiro, comparado com tudo o que estes cursos cobriram.

No fim, você consegue ler cada arquivo que o rails generate scaffold produz à luz de cursos que já terminou.

Aula 1 de 7 · grátis

Continue com a aula 2

Rodando numa app de rascunho

Roda o comando de scaffold numa app Rails descartável e lê a ordem dos geradores internos.

Com uma conta grátis você também tem os quizzes, seu progresso e suas anotações, e a discussão.

Digite para buscar...