defmodule Ammoprices.Catalog.Retailer do @moduledoc false use Ecto.Schema import Ecto.Changeset @primary_key {:id, :binary_id, autogenerate: true} @foreign_key_type :binary_id schema "retailers" do field :name, :string field :slug, :string field :base_url, :string field :enabled, :boolean, default: true field :last_scraped_at, :utc_datetime has_many :products, Ammoprices.Catalog.Product timestamps(type: :utc_datetime) end def changeset(retailer, attrs) do retailer |> cast(attrs, [:name, :slug, :base_url, :enabled, :last_scraped_at]) |> validate_required([:name, :slug, :base_url]) |> unique_constraint(:slug) end end