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.

Ecto - официальный проект от создателей Elixir. Это оболочка, которая предоставляет возможность коммуникации с базой данных. Ecto позволяет создавать миграции, объявлять модели, вносить и обновлять данные, а также посылать запросы к ним.

При создании, изменении или удалении записей Ecto.Repo.insert/2, update/2 и delete/2 принимают набор изменений (changeset) в качестве первого параметра. Но что это такое?

Практически каждому разработчику знакома задача проверки входных данных на потенциальные ошибки. Мы хотим быть уверены, что данные находятся в надлежащем виде, прежде чем попытаемся их использовать.

Ecto полностью покрывает эту потребность при помощи модуля Changeset и структур данных. В этом уроке мы познакомимся с этой функциональностью и научимся проверять данные, перед тем как сохранить их в базу данных.

В этом уроке мы рассмотрим, как использовать Ecto для определения связей и работы с ассоциациями между схемами.