Lessons: Ecto

Interacting with data is a part of most applications. These lessons explore the Ecto library and how to leverage it for our database interactions.

Básico

Ecto é um projeto oficial do Elixir que fornece uma camada de banco de dados e linguagem integrada para consultas. Com Ecto podemos criar migrações, definir esquemas, inserir e atualizar registros, e fazer consultas.

Changesets

Para inserir, atualizar ou excluir as informações de um banco de dados, Ecto.Repo.insert/2, update/2 e delete/2 requerem um changeset como primeiro parâmetro. Mas o que são exatamente changesets?

Uma tarefa comum para quase todos os desenvolvedores é verificar os dados de entrada por possíveis erros - queremos ter certeza de que os dados estão no estado correto antes de tentarmos usá-los para nossos propósitos.

O Ecto fornece uma solução completa para trabalhar com alteração de dados na forma do módulo Changeset e de estruturas de dados. Nesta lição, vamos explorar essa funcionalidade e aprender a verificar a integridade dos dados antes de persisti-los no banco de dados.

Associações

Nessa seção vamos aprender a utilizar o Ecto para definir e trabalhar com associações entre esquemas.