[RUBY] Lassen Sie uns eine Suchfunktion mit Rails (Ransack) machen

Einführung

Dieses Mal erstellen wir eine Suchfunktion mit einem Edelstein namens "Ransack". Ransack ist ein sehr nützliches Juwel, das es einfach macht, komplexe Suchfunktionen mit weniger Code zu erstellen. Da Sie mit Ransack problemlos eine Sortierfunktion erstellen können, erstellen wir diese auch.

Implementierung grundlegender Suchergebnisse

Das Ziel dieser Suche ist die Stretch-Liste (Stretchs-Tabelle) und ihre Kategorieliste (Kategorietabelle). Auf dem Streckenlistenbildschirm (Indexansicht) wird ein Suchfenster angezeigt.

Installieren Sie gem

gem 'ransack';

Installieren Sie mit "Bundle Install"

Aussicht

Fügen Sie der Stretch-Index-Ansicht ein Suchfenster hinzu

<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: "Geben Sie den Namen der Dehnung und des Muskels ein" ,data: {"turbolinks" => false}%>
        <%= f.submit "Suche", class: "btn btn-success btn-lg" %>
      <% end %>
</div>

Mit CSS einstellen

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

Regler

class StretchsController < ApplicationController
  def index
    #Suchfunktion(Suchwortparameter[:q]Empfangen Sie bei @stretchs)
    @q = Stretch.all.ransack(params[:q])
    @stretchs = @q.result(distinct: true).page(params[:page])
  end
end

Empfangen Sie das Suchwort mit params [: q], geben Sie die entsprechenden Daten in die Suche in @stretchs ein. Es ist ein Formular, um wieder zur Indexansicht zurückzukehren.

Damit ist die Implementierung der einfachen Suchfunktion abgeschlossen.

Schließlich

Dieses Mal habe ich eine Suchfunktion mit Ransack erstellt. Wenn Sie etwas falsch finden, bringen Sie es mir bitte bei.

Recommended Posts

Lassen Sie uns eine Suchfunktion mit Rails (Ransack) machen
Erstellen Sie trotzdem eine Anmeldefunktion mit Rails
Suchfunktion mit [Rails] Ransack
Fügen Sie eine Suchfunktion in Rails hinzu.
Machen wir eine Weihnachtskarte mit Verarbeitung!
[Schienenentnahme] Erstellen Sie eine einfache Entnahmefunktion mit Schienen
Lassen Sie uns mit Rails einen Fehlerbildschirm erstellen
[Rails] Beachten Sie, dass beim Schreiben ein erweitertes Suchformular mit Ransack erstellt wurde
Ich habe versucht, mit Rails eine Gruppenfunktion (Bulletin Board) zu erstellen
[Rails] Implementierung der Suchfunktion mit Gem's Ransack
Erstellen einer EC-Site mit Rails 5 ⑨ ~ Erstellen einer Warenkorbfunktion ~
Machen wir einen LINE Bot mit Ruby + Sinatra - Teil 2
[Java-Grundlagen] Lassen Sie uns ein Dreieck mit einer for-Anweisung erstellen
Machen wir einen LINE Bot mit Ruby + Sinatra - Teil 1
Implementierung der Fuzzy-Suchfunktion für Schienen
[Schienen] Implementieren Sie die Benutzersuchfunktion
[Rails] Erstellen eines Suchfelds
[Schienen] Machen Sie eine Brotkrumenliste
[Für diejenigen, die Portfolios erstellen] Mit Ransack erstellte Suchfunktion
[Rails DM] Erstellen wir eine Benachrichtigungsfunktion, wenn DM gesendet wird!
Ich möchte eine Funktion mit Kotlin und Java erstellen!
Erstellen wir eine einfache API mit EC2 + RDS + Spring Boot ①
[Rails] Suche aus mehreren Spalten + Bedingungen mit Gem und Ransack
Machen Sie mit Ruby2D ein Labyrinth
[Rails] Pagenation mit Ajax kompatibel machen
Erstellen Sie mit JavaFX ein Diashow-Tool
Machen Sie eine Müllabfuhr mit line-bot-sdk-java
Erstellen Sie eine Listenkarte mit LazyMap
Zeitlose Suche mit Rails + JavaScript (jQuery)
[Schienen] Machen wir einen Unit-Test mit Rspec!
Machen Sie ein Tippspiel mit Ruby
Erstellen wir eine Buchverwaltungs-Webanwendung mit Spring Boot part1
Implementieren Sie eine verfeinerte Suchfunktion für mehrere Modelle ohne Rails5-Juwel.
Ich möchte eine Browsing-Funktion mit Ruby on Rails hinzufügen
Lassen Sie uns mit Spring Boot part3 eine Webanwendung für die Buchverwaltung erstellen
Lassen Sie uns eine TODO-App in Java 6 erstellen. Implementierung der Suchfunktion
Lassen Sie uns mit Spring Boot part2 eine Webanwendung für die Buchverwaltung erstellen
[Ruby on Rails] Suchfunktion (nicht ausgewählt)
Lassen Sie uns mit Ruby Draw Poker machen ~ Implementierung 1 (Karte) ~
Erstellen Sie mit Sinatra eine Familien-ToDo-Liste
[Rails6] Erstelle eine neue App mit Rails [Anfänger]
Lassen Sie uns mit Ruby ~ Vorbereitung ~ Poker ziehen
Lassen Sie uns mit Ruby Draw Poker machen ~ Implementierung 4 (Deck) ~
Erstellen Sie mit Sinatra eine Familien-ToDo-Liste
[Rails] Verwalten wir Konstanten mit config gem