View Source BitcrowdEcto.Schema (bitcrowd_ecto v1.0.0)

An opinionated set of defaults for Ecto schemas.

  • Uses Ecto.Schema and imports Ecto.Changeset and BitcrowdEcto.Changeset
  • Configures an autogenerated PK of type binary_id
  • Configures FKs to be of type binary_id
  • Sets timestamp type to utc_datetime_usec
  • Defines a type t as a struct of the schema module.
  • Defines an id type

Usage

defmodule MyApp.MySchema do
  use BitcrowdEcto.Schema
end

Or if you table lives in a different Postgres schema:

defmodule MyApp.MySchema do
  use BitcrowdEcto.Schema, prefix: "foo"
end

Summary

Functions

Safely converts a string into an enum member atom. Returns nil if conversion is not posssible.

Safely converts a string into an enum member atom. Raises if conversion is not possible.

Functions

Link to this function

to_enum_member(schema, field, value)

View Source (since 0.9.0)
@spec to_enum_member(schema :: module(), field :: atom(), value :: any()) ::
  term() | nil

Safely converts a string into an enum member atom. Returns nil if conversion is not posssible.

Example

iex> to_enum_member(TestEnumSchema, :some_enum, "foo")
:foo
Link to this function

to_enum_member!(schema, field, value)

View Source (since 0.9.0)
@spec to_enum_member!(schema :: module(), field :: atom(), value :: any()) ::
  term() | no_return()

Safely converts a string into an enum member atom. Raises if conversion is not possible.