Packages
integratedb
0.1.0
IntegrateDB is a database sharing system. It provides integration primitives and data ownership and migration controls. Use it to integrate applications directly through a Postgres database.
Current section
Files
Jump to
Current section
Files
lib/integrate/stakeholders/stakeholder.ex
defmodule Integrate.Stakeholders.Stakeholder do
use Integrate, :schema
schema "stakeholders" do
field :name, :string
belongs_to :user, Accounts.User
has_many :specs, Specification.Spec
# has_many :claims, Claims.Claim
timestamps()
end
@doc false
def changeset(stakeholder, attrs) do
stakeholder
|> cast(attrs, [:name, :user_id])
|> validate_required([:name])
|> Validate.normalise_name(:name)
|> Validate.validate_name(:name)
|> unique_constraint(:name)
|> assoc_constraint(:user)
end
end