Entendu/lib/entendu_web/views/changeset_view.ex

16 lines
456 B
Elixir

defmodule EntenduWeb.ChangesetView do
use EntenduWeb, :view
def translate_errors(%Ecto.Changeset{} = changeset) do
Ecto.Changeset.traverse_errors(changeset, &translate_error/1)
end
def translate_errors(errors = %{}), do: errors
def render("error.json", %{changeset: changeset}) do
# When encoded, the changeset returns its errors
# as a JSON object. So we just pass it forward.
%{errors: translate_errors(changeset)}
end
end