###実現したいこと
商品の売り上げランキング順で商品を表示させたい。
###困ったこと
ランキング順で商品IDは取れるものの、表示される時はID順になってしまう。
###該当コード
popularsの段階では売り上げ順になっているが、その後はただの商品id順になってしまう。。。 Controller.rb def home populars = Order.group(:product_id).order('sum(quantity) desc').pluck(:product_id) @populars = Product.where(id: populars) end
(home.html.erb) <div class="popular_content"> <% @populars.each do |popular|%> <div class="product"> <%= link_to product_path(popular.id) do%> <% product_images= Image.find_by(product_id: popular.id)%> <div class="product_image"><%= image_tag("#{product_images.img1}")%></div> <div class="product_name"><h3><%= popular.name %></h3></div> <div class="product_tag"> <% product_tags = popular.tags %> <% product_tags.each do |product_tag| %> <div class="tag_area"> <span><i class="fas fa-tag tag"></i></span><%= "#{product_tag.name}" %> </div> <% end %> </div> <div class="product_price">¥<%= popular.price.to_s(:delimited)%></div> <% end %> </div> <% end %> </div>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/08 12:01
2020/11/08 12:04