diff --git a/lib/pinchflat/media/media_metadata.ex b/lib/pinchflat/media/media_metadata.ex index e41db27..daac6d0 100644 --- a/lib/pinchflat/media/media_metadata.ex +++ b/lib/pinchflat/media/media_metadata.ex @@ -10,8 +10,12 @@ defmodule Pinchflat.Media.MediaMetadata do alias Pinchflat.Media.MediaItem + @allowed_fields ~w(metadata_filepath thumbnail_filepath)a + @required_fields ~w(metadata_filepath thumbnail_filepath)a + schema "media_metadata" do - field :client_response, :map + field :metadata_filepath, :string + field :thumbnail_filepath, :string belongs_to :media_item, MediaItem @@ -21,8 +25,8 @@ defmodule Pinchflat.Media.MediaMetadata do @doc false def changeset(media_metadata, attrs) do media_metadata - |> cast(attrs, [:client_response]) - |> validate_required([:client_response]) + |> cast(attrs, @allowed_fields) + |> validate_required(@required_fields) |> unique_constraint([:media_item_id]) end end diff --git a/priv/repo/migrations/20240223184259_add_metadata_filepath_to_media_metadata.exs b/priv/repo/migrations/20240223184259_add_metadata_filepath_to_media_metadata.exs new file mode 100644 index 0000000..07a3ace --- /dev/null +++ b/priv/repo/migrations/20240223184259_add_metadata_filepath_to_media_metadata.exs @@ -0,0 +1,12 @@ +defmodule Pinchflat.Repo.Migrations.AddMetadataFilepathToMediaMetadata do + use Ecto.Migration + + def change do + alter table(:media_metadata) do + add :metadata_filepath, :string, null: false + add :thumbnail_filepath, :string, null: false + + remove :client_response, :json + end + end +end