defmodule Frenzy.PipelineStage do use Ecto.Schema import Ecto.Changeset schema "pipeline_stages" do field :index, :integer field :module_name, :string field :options, :map belongs_to :feed, Frenzy.Feed timestamps() end @type t() :: %__MODULE__{ __meta__: Ecto.Schema.Metadata.t(), id: integer() | nil, index: integer(), module_name: String.t(), options: map(), feed: Frenzy.Feed.t() | Ecto.Association.NotLoaded.t(), inserted_at: NaiveDateTime.t(), updated_at: NaiveDateTime.t() } def changeset(stage, attrs) do stage |> cast(attrs, [:index, :module_name, :options]) |> validate_required([:index, :module_name]) end end