[RUBY] [Rails] Afficher les messages populaires au format de classement [Facile]

Je crée une application développée personnellement, et je pense qu'elle sera plus facile à utiliser si vous pouvez la voir dans l'ordre des publications populaires, En gros, je l'ai implémenté en faisant référence à cet article.

routes.rb

routes.rb


get 'rank' => 'shops#rank'

Dans mon cas, je l'ai défini sur l'action de rang du contrôleur de magasins.

shops_controller.rb

shops_controller.rb


 def rank
    @all_ranks = Shop.find(Favorite.group(:id).order('count(shop_id) desc').limit(5).pluck(:shop_id))
 end

Définissez la méthode de classement dans le contrôleur de magasins. Afficher dans l'ordre des articles avec le plus de likes.

rank.html.slim

ruby:rank.html.slim


- @all_ranks.each.with_index(1) do |shop, i|
  h5.col-md-5
    .card.shadow
      | No.
      = i
      | 
       = link_to shop.name, shop_path(shop)
       = link_to((image_tag shop.picture.url), shop_path(shop.id), class: 'shop-picture') if shop.picture.url.present?

Créez un fichier de vue et affichez-le. Extrait à titre d'exemple. Après cela, modifiez l'apparence avec CSS.

python


@all_ranks.each.with_index(1) do |shop, i|

À partir de ce qui précède, vous pouvez afficher dans l'ordre décroissant des likes.

Achevée

L'affichage au format de classement a été réalisé facilement.

Recommended Posts

[Rails] Afficher les messages populaires au format de classement [Facile]
[Localisation japonaise] Rails i18n Affichage de la vue de localisation japonaise simplifiée uniquement
Organiser les publications par ordre de likes sur Rails (classement)
Comment implémenter la fonctionnalité de classement dans Rails
[Rails] Afficher les avatars dans les messages à l'aide du stockage actif
[Ruby on Rails] Affichage du classement (total, valeur moyenne)
Facile à afficher Hello World avec Rails + Docker
[Rails] Classement et pagination par J'aime
Group_by dans Rails
[Ruby on Rails] Fonction de classement des scores (affichage complet)
J'ai résumé le format d'affichage de la réponse JSON de Rails
[Rails] Comment afficher les images dans la vue