From bca7dc437d8930ef052c8fabb89ff0c9f5157843 Mon Sep 17 00:00:00 2001 From: Miguel Michelson Date: Mon, 22 Jul 2024 01:45:46 -0400 Subject: [PATCH] order playlists --- app/views/home/_playlist_section.erb | 3 ++- app/views/home/_playlist_section_wide.erb | 10 ++++++---- db/migrate/20240722053122_add_position_to_playlist.rb | 5 +++++ db/schema.rb | 3 ++- 4 files changed, 15 insertions(+), 6 deletions(-) create mode 100644 db/migrate/20240722053122_add_position_to_playlist.rb diff --git a/app/views/home/_playlist_section.erb b/app/views/home/_playlist_section.erb index b1bffee..6fced65 100644 --- a/app/views/home/_playlist_section.erb +++ b/app/views/home/_playlist_section.erb @@ -23,7 +23,8 @@
- <% Playlist.published.latests.where(playlist_type: playlist_type).order("release_date desc, id desc").limit(limit).each do |playlist| %> + <% Playlist.published.latests.where(playlist_type: playlist_type) + .order("editor_choice_position asc, release_date desc, id desc").limit(limit).each do |playlist| %>
<%= link_to playlist_path(playlist) do %>
diff --git a/app/views/home/_playlist_section_wide.erb b/app/views/home/_playlist_section_wide.erb index 6f4e68e..289c5f2 100644 --- a/app/views/home/_playlist_section_wide.erb +++ b/app/views/home/_playlist_section_wide.erb @@ -9,13 +9,15 @@
-
+
- <% Playlist.published.latests.where(playlist_type: playlist_type).order("release_date desc, id desc").limit(limit).each_with_index do |playlist, index| %> + <% Playlist.published.where(playlist_type: playlist_type) + .order("editor_choice_position asc, release_date, id desc").limit(limit).each_with_index do |playlist, index| %> +
"> <%= link_to playlist_path(playlist) do %>
@@ -25,8 +27,8 @@ ) %>
-

- <%= playlist.title %> +

"> + <%= playlist.title %>

<%= t(:by, name: playlist.user.username) %> diff --git a/db/migrate/20240722053122_add_position_to_playlist.rb b/db/migrate/20240722053122_add_position_to_playlist.rb new file mode 100644 index 0000000..3420b9e --- /dev/null +++ b/db/migrate/20240722053122_add_position_to_playlist.rb @@ -0,0 +1,5 @@ +class AddPositionToPlaylist < ActiveRecord::Migration[7.1] + def change + add_column :playlists, :editor_choice_position, :integer + end +end diff --git a/db/schema.rb b/db/schema.rb index c86a6c8..5d95834 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.1].define(version: 2024_07_21_162149) do +ActiveRecord::Schema[7.1].define(version: 2024_07_22_053122) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -300,6 +300,7 @@ t.datetime "updated_at", null: false t.string "tags", default: [], array: true t.integer "label_id" + t.integer "editor_choice_position" t.index ["label_id"], name: "index_playlists_on_label_id" t.index ["slug"], name: "index_playlists_on_slug" t.index ["tags"], name: "index_playlists_on_tags", using: :gin