Я создаю альбом пользователей . Пользователь может загружать много изображений в свой альбом, и я использую nested_forms
для загрузки изображений в альбом.Ruby on Rails - Добавление порядка сортировки к изображениям альбомов
На мой взгляд, когда пользователь видит образы, принадлежащие альбому, я хочу показать X of (total_number_of_images).
Для экс: если альбом имеет изображений и пользователь видит 3rd изображение в этом альбоме, было бы 3 из 12 и при нажатии на следующем он изменится на и т.д.
Как я могу получить это вр к? Нужно ли добавить column
в images
-db (как добавить порядок сортировки) или есть другие способы сделать это?
Это то, что я сделал до сих пор: я добавил sort_order
колонку в images
-db и делает это:
class Image < ActiveRecord::Base
after_create :previous_slide
@slide = user.images.order("id DESC")
@slide.find_each do |slide|
slide.increment!(:sort_order, + 1)
end
end
Это фактически добавляет приращение к sort_order column
, но в неправильном порядке, так как order
всегда id ASC
независимо от того, что я добавил. я получаю:
id sort
1 4
2 3
3 2
4 1
Ее должно быть:
id sort
1 1
2 2
3 3
4 4
Как вы можете видеть его на неправильном порядке.
Что вы сделали до сих пор? Как выглядит ваш контроллер и ваше мнение? – spickermann
Да, порядок sord зависит от настроек пользователя, тогда да, он должен быть добавлен как столбец настроек в db. –
См. Мое новое редактирование. Я добавил коды, которые я сделал до сих пор. – Rubioli