[RUBY] [Rails] Création d'un champ de recherche

procédure

Paramètres de routage Paramètres du contrôleur afficher le fichier: créer une recherche

Paramètres de routage

Ajout de la recherche au routage des profils.

rutes.rb


resources :profiles do
    get :search, on: :collection
  end
search_profiles GET    /profiles/search(.:format)     profiles#search

Paramètres du contrôleur

Cette fois, nous supposons un cas où il y a une correspondance partielle pour: nom, un cas où le sexe correspond, ou un cas où les deux correspondent.

controller.rb


def search
    if params[:name].present? && params[:sex].present?
      @profiles = Profile.where('name LIKE ?', "%#{params[:name]}%").where(sex: "#{params[:sex]}")
    elsif params[:name].present?
      #Match partiel
      @profiles = Profile.where('name LIKE ?', "%#{params[:name]}%")
    elsif params[:sex].present?
      @profiles = Profile.where(sex: "#{params[:sex]}")
    else
      # @profiles = Profile.none
      @profiles = Profile.none
    end
  end

Créer une vue

search.html.erb


<h1>Barre de recherche</h1>
<%= form_with url: search_profiles_path, method: :get, local: true do |f| %>
<%= f.label :name, "Nom" %>
<%= f.text_field :name %>

 <%= f.label :Masculin%><%= f.radio_button :sex, :Masculin%>
 <%= f.label :Femme%><%= f.radio_button :sex, :Femme%>

<%= f.submit :search %>
<% end %>

Recommended Posts

[Rails] Création d'un champ de recherche
Ajoutez une fonction de recherche dans Rails.
Rails Bases de la création d'une nouvelle application
Faisons une fonction de recherche avec Rails (ransack)
(Ruby on Rails6) Création de données dans une table
[Rails] Création d'une liste de miettes de pain à l'aide de Gem gretel
[Pour les débutants] Procédure de création d'un contrôleur à l'aide de rails
Implémentation de la recherche par hashtag Rails
Créer un référentiel local
Créer un cas de test
Comment écrire une recherche de comparaison de dates dans Rails
[Rails] Lancer un nouveau projet
Implémentation de la fonction de recherche floue Rails
[Rails] Implémenter la fonction de recherche d'utilisateurs
Fonction de recherche à l'aide de [rails] ransack
Créer un lot Liferay
Créer un calendrier avec Ruby
Publier des vidéos sur les rails
Fournir une barre de recherche dans Rails ~ Effectuer une recherche en joignant plusieurs tables
[Rails] Faites une liste de miettes de pain
Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~
Ce que les débutants peuvent apprendre en créant une API Rails simple
Implémentez une fonction de recherche affinée pour plusieurs modèles sans gemme Rails5.
[Rails] Evitez le SELECT émis lors de la création d'un modèle avec appartient_to défini!
(Ruby on Rails6) Créer une base de données et l'afficher dans une vue
Règles de dénomination lors de la création de nouveaux contrôleurs et modèles avec rails
Création d'une expression conditionnelle mixte de l'instruction Rails if et
[Rails] La rédaction de notes a créé un formulaire de recherche avancée avec ransack
Créer un nouvel utilisateur avec des rails était en colère contre l'attribut inconnu "mot de passe" pour l'utilisateur.
[Auto-apprentissage] Création d'un portfolio (application d'origine) après avoir terminé le didacticiel Rails
Préparation à la création de l'application Rails
[Tutoriel Rails Chapitre 5] Créer une mise en page
Créer une application de minuterie avec de la boue
Créer une nouvelle application avec Rails
Création d'une série de plugins Elasticsearch (2) Recherche
Implémenter un formulaire de contact dans Rails
Recherche intemporelle avec Rails + JavaScript (jQuery)