defmodule Odinsea.Database.Schema.BbsReply do @moduledoc """ Ecto schema for the bbs_replies table. Represents guild BBS thread replies. """ use Ecto.Schema import Ecto.Changeset @primary_key {:replyid, :id, autogenerate: true} schema "bbs_replies" do field :threadid, :integer field :postercid, :integer field :timestamp, :integer field :content, :string, default: "" field :guildid, :integer, default: 0 belongs_to :bbs_thread, Odinsea.Database.Schema.BbsThread, foreign_key: :threadid, references: :threadid, define_field: false end @doc """ Changeset for creating a BBS reply. """ def changeset(bbs_reply, attrs) do bbs_reply |> cast(attrs, [:threadid, :postercid, :timestamp, :content, :guildid]) |> validate_required([:threadid, :postercid, :timestamp]) end end