Files
music_library/lib/music_library/notes/note.ex
T
Claudio Ortolina f5c60d2cd1 Tighten notes content logic
- Notes can have empty content (no harm)
- Always default to "" instead of nil
2025-09-23 08:45:51 +03:00

25 lines
518 B
Elixir

defmodule MusicLibrary.Notes.Note do
use Ecto.Schema
import Ecto.Changeset
@primary_key {:id, :binary_id, autogenerate: true}
schema "notes" do
field :entity, Ecto.Enum, values: [:record, :artist]
field :content, :string, default: ""
field :musicbrainz_id, Ecto.UUID
timestamps(type: :utc_datetime)
end
def changeset(note, attrs) do
note
|> cast(attrs, [
:entity,
:content,
:musicbrainz_id
])
|> validate_required([:entity, :musicbrainz_id])
end
end