Trilha Júnior Trilha

ActiveRecord: transações

O curso trata de ActiveRecord::Base.transaction no código da aplicação, para quando várias escritas relacionadas precisam dar certo ou falhar juntas. Ele testa quais jeitos de sair de um bloco disparam rollback: uma exceção levantada desfaz tudo, enquanto um return simples ou um valor falso grava. Mostra o ActiveRecord::Rollback para cancelar em silêncio, os blocos aninhados que entram na transação externa e o requires_new: true com savepoints. Depois lê, linha por linha, o CompleteLessonService e o AccountUpdateService deste app e explica por que save! e update! importam dentro de uma transação.

O que você vai aprender

  • ✓Como ActiveRecord::Base.transaction torna um grupo de escritas tudo ou nada
  • ✓Por que só uma exceção levantada faz rollback, enquanto return e valores falsos gravam
  • ✓Quando usar ActiveRecord::Rollback para um cancelamento esperado e silencioso
  • ✓Como transações aninhadas entram na externa e o que requires_new: true muda
  • ✓Por que save! e update! decidem se escritas anteriores do bloco são desfeitas
Prévia grátis · Aula 1 3 min de leitura

ActiveRecord::Base.transaction: todas as suas escritas, ou nenhuma

ActiveRecord: migrations multi-tabela mostrou que o Rails envolve o change inteiro de uma migration comum numa transação de banco, e várias chamadas create_table entram todas ou nenhuma entra. Ninguém escreveu essa transação à mão; o Rails a forneceu. Este curso trata da mesma garantia escrita de…

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...