34 lines
693 B
Elixir
34 lines
693 B
Elixir
defmodule Odinsea.Database.Schema.Family do
|
|
@moduledoc """
|
|
Ecto schema for the families table.
|
|
Represents family data in the game.
|
|
"""
|
|
|
|
use Ecto.Schema
|
|
import Ecto.Changeset
|
|
|
|
@primary_key {:familyid, :id, autogenerate: true}
|
|
|
|
schema "families" do
|
|
field :leaderid, :integer, default: 0
|
|
field :notice, :string, default: ""
|
|
end
|
|
|
|
@doc """
|
|
Changeset for creating a family.
|
|
"""
|
|
def creation_changeset(family, attrs) do
|
|
family
|
|
|> cast(attrs, [:leaderid, :notice])
|
|
|> validate_required([:leaderid])
|
|
end
|
|
|
|
@doc """
|
|
Changeset for updating family notice.
|
|
"""
|
|
def notice_changeset(family, attrs) do
|
|
family
|
|
|> cast(attrs, [:notice])
|
|
end
|
|
end
|