How do you get error of Repo.all on pattern machine

You can wrap it in a try / catch block.

def join(age) do
  query = from p in UsersInfo,
    join: c in EditUserHistory, 
    where: c.users_info_id == p.id,
    where: p.age > ^age,
    select: %{full_name: p.full_name, email: c.old_email}
 
  Repo.all(query)
rescue
  e in Ecto.Query.CastError -> {:error, :cast_error}
else
  results -> {:ok, results}
end
2 Likes