write first test and let changeset errors return error json in controller
This commit is contained in:
15
lib/entendu_web/views/changeset_view.ex
Normal file
15
lib/entendu_web/views/changeset_view.ex
Normal file
@@ -0,0 +1,15 @@
|
||||
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
|
Reference in New Issue
Block a user