[RUBY] Faisons une fonction de recherche avec Rails (ransack)

introduction

Cette fois, nous allons créer une fonction de recherche en utilisant une gemme appelée ransack. ransack est un joyau très utile qui facilite la création de fonctions de recherche complexes avec moins de code. De plus, comme vous pouvez facilement créer une fonction de tri avec ransack, nous la créerons également.

Mise en œuvre des résultats de recherche de base

La cible de cette recherche est la liste étendue (tableau des étirements) et sa liste de catégories (tableau des catégories). Une fenêtre de recherche sera fournie sur l'écran de la liste étendue (vue d'index).

Installer la gemme

gem 'ransack';

Installer avec bundle install

Vue

Ajouter une fenêtre de recherche à la vue d'index extensible

<div class= serch.id>
      <%= search_form_for @q, class:'form-inline' ,url: stretchs_path do |f| %>
        <%= f.search_field :action_muscles_or_name_cont, class: 'form-control input-lg', placeholder: "Entrez le nom de l'étirement et le nom du muscle" ,data: {"turbolinks" => false}%>
        <%= f.submit "Chercher", class: "btn btn-success btn-lg" %>
      <% end %>
</div>

Ajuster avec CSS

.form-inline .form-control {
    display: inline-block;
    width: 80%;
}

manette

class StretchsController < ApplicationController
  def index
    #Fonction de recherche(Rechercher des paramètres de mots[:q]Recevez sur @stretchs)
    @q = Stretch.all.ransack(params[:q])
    @stretchs = @q.result(distinct: true).page(params[:page])
  end
end

Recevoir le mot de recherche avec les paramètres [: q], mettre les données correspondantes dans la recherche dans @stretchs, C'est un formulaire pour revenir à la vue d'index.

Ceci termine la mise en œuvre de la fonction de recherche simple.

finalement

Cette fois, j'ai créé une fonction de recherche à l'aide de ransack. Si vous trouvez quelque chose qui ne va pas, apprenez-moi s'il vous plaît.

Recommended Posts

Faisons une fonction de recherche avec Rails (ransack)
Créez quand même une fonction de connexion avec Rails
Fonction de recherche à l'aide de [rails] ransack
Ajoutez une fonction de recherche dans Rails.
Faisons une carte de Noël avec Processing!
[Retrait des rails] Créez une fonction de retrait simple avec des rails
Faisons un écran d'erreur avec Rails
[Rails] La rédaction de notes a créé un formulaire de recherche avancée avec ransack
J'ai essayé de créer une fonction de groupe (babillard) avec Rails
[Rails] Implémentation de la fonction de recherche en utilisant le ransack de gem
Créer un site EC avec Rails 5 ⑨ ~ Créer une fonction de panier ~
Faisons un Bot LINE avec Ruby + Sinatra - Partie 2
[Bases de Java] Créons un triangle avec une instruction for
Faisons un Bot LINE avec Ruby + Sinatra - Partie 1
Implémentation de la fonction de recherche floue Rails
[Rails] Implémenter la fonction de recherche d'utilisateurs
[Rails] Création d'un champ de recherche
[Rails] Faites une liste de miettes de pain
[Pour ceux qui créent des portefeuilles] Fonction de recherche créée avec ransack
[Rails DM] Créons une fonction de notification lorsque DM est envoyé!
Je veux créer une fonction avec kotlin et java!
Faisons une API simple avec EC2 + RDS + Spring boot ①
[Rails] Recherche à partir de plusieurs colonnes + conditions avec Gem et ransack
Créez un labyrinthe de fouilles avec Ruby2D
[Rails] Rendre la pagination compatible avec Ajax
Créer un outil de diaporama avec JavaFX
Créer une fonction de pagination avec Rails Kaminari
Faire un rappel de garbage avec line-bot-sdk-java
Créer une carte de liste avec LazyMap
Recherche intemporelle avec Rails + JavaScript (jQuery)
[rails] Faisons un test unitaire avec Rspec!
Faites un jeu de frappe avec ruby
Créons une application Web de gestion de livres avec Spring Boot part1
Implémentez une fonction de recherche affinée pour plusieurs modèles sans gemme Rails5.
Je souhaite ajouter une fonction de navigation avec ruby on rails
Créons une application Web de gestion de livres avec Spring Boot part3
Créons une application TODO en Java 6 Implémentation de la fonction de recherche
Créons une application Web de gestion de livres avec Spring Boot part2
[Ruby on Rails] Fonction de recherche (non sélectionnée)
Faisons tirer le poker avec ruby ~ Implémentation 1 (carte) ~
Faites une liste de choses à faire en famille avec Sinatra
[Rails6] Créer une nouvelle application avec Rails [Débutant]
Faisons dessiner du poker avec du rubis ~ Préparation ~
Faisons dessiner du poker avec ruby ~ Implémentation 4 (Deck) ~
Faites une liste de choses à faire en famille avec Sinatra
[Rails] Gérons les constantes avec config gem