defmodule Odinsea.Database.Schema.FameLog do @moduledoc """ Ecto schema for the famelog table. Represents fame (reputation) transactions between characters. """ use Ecto.Schema import Ecto.Changeset @primary_key {:famelogid, :id, autogenerate: true} @timestamps_opts [inserted_at: :when, updated_at: false] schema "famelog" do field :characterid, :integer, default: 0 field :characterid_to, :integer, default: 0 field :when, :naive_datetime belongs_to :character, Odinsea.Database.Schema.Character, foreign_key: :characterid, references: :id, define_field: false end @doc """ Changeset for creating a fame log entry. """ def changeset(fame_log, attrs) do fame_log |> cast(attrs, [:characterid, :characterid_to]) |> validate_required([:characterid, :characterid_to]) end end