index.community/backend/lib/backend/edge.ex

26 lines
511 B
Elixir

defmodule Backend.Edge do
use Ecto.Schema
import Ecto.Changeset
schema "edges" do
belongs_to :source, Backend.Instance,
references: :domain,
type: :string,
foreign_key: :source_domain
belongs_to :target, Backend.Instance,
references: :domain,
type: :string,
foreign_key: :target_domain
timestamps()
end
@doc false
def changeset(edge, attrs) do
edge
|> cast(attrs, [:source, :target])
|> validate_required([:source, :target])
end
end