diff --git a/lib/music_library/collection.ex b/lib/music_library/collection.ex index b5448dd9..55f200c1 100644 --- a/lib/music_library/collection.ex +++ b/lib/music_library/collection.ex @@ -37,13 +37,11 @@ defmodule MusicLibrary.Collection do end def get_latest_record! do - fields = Records.minimal_record_fields() - q = from r in base_search(), order_by: [desc: r.purchased_at], limit: 1, - select: ^fields + select: ^Records.essential_fields() Repo.one!(q) end diff --git a/lib/music_library/records.ex b/lib/music_library/records.ex index 8ff6d90c..6fba134c 100644 --- a/lib/music_library/records.ex +++ b/lib/music_library/records.ex @@ -8,9 +8,19 @@ defmodule MusicLibrary.Records do alias MusicLibrary.Records.{Record, SearchParser} - @fields [:id, :type, :artists, :format, :title, :release, :genres, :musicbrainz_id, :cover_hash] - - def minimal_record_fields, do: @fields + def essential_fields do + [ + :id, + :type, + :artists, + :format, + :title, + :release, + :genres, + :musicbrainz_id, + :cover_hash + ] + end def search_records(initial_search, query, opts) do limit = Keyword.fetch!(opts, :limit) @@ -21,7 +31,7 @@ defmodule MusicLibrary.Records do |> build_search(query) |> limit(^limit) |> offset(^offset) - |> select(^@fields) + |> select(^essential_fields()) Repo.all(search) end