Ecto.Changeset.cast
Given the embedded schema
embedded_schema do
field(:mame, :string)
end
Used by the following code raises a pattern match error that can be difficult to diagnose.
Notice that the schema definition uses :mame
with an “M”, and @root_fields
uses correct (but mismatched) :name
with an “N”
@root_fields [:name]
parsed = Jason.decode!(data)
%__MODULE__{}
|> Ecto.Changeset.cast(parsed, @root_fields)
I got sidetracked thinking that the cast
was unhappy because the passed data was using string keys