ISBN v0.2.0 ISBN.Ecto.Changeset View Source

Provide function to validate ISBN field in a changeset

Link to this section Summary

Functions

Verifies if given field in the changeset has a valid ISBN.

Link to this section Functions

Link to this function

validate_isbn(changeset, field, options \\ [])

View Source

Verifies if given field in the changeset has a valid ISBN.

Examples

iex> {%{}, %{isbn: :string}}
...> |> Ecto.Changeset.cast(%{isbn: "978-03-0640-615-7"}, [:isbn])
...> |> ISBN.Ecto.Changeset.validate_isbn(:isbn)
#Ecto.Changeset<action: nil, changes: %{isbn: "978-03-0640-615-7"}, errors: [], data: %{}, valid?: true>

iex> {%{}, %{isbn: :string}}
...> |> Ecto.Changeset.cast(%{isbn: "1234567890"}, [:isbn])
...> |> ISBN.Ecto.Changeset.validate_isbn(:isbn)
#Ecto.Changeset<action: nil, changes: %{isbn: "1234567890"}, errors: [isbn: {"is invalid", []}], data: %{}, valid?: false>