[RUBY] Implementierung der Suchfunktion

Einführung

Implementieren Sie beim Erstellen einer persönlichen Anwendung eine Suchfunktion, damit der Inhalt der veröffentlichten Artikel durch Suchen angezeigt werden kann.

Routing-Einstellungen

Dieses Mal wechseln wir nicht zur Seite, indem wir Folgendes angeben: id, daher verwenden wir die Sammlung, um das Routing festzulegen.

routes.rb


resources :posts do
  get :search, on: :collection
  resource :likes, only: [:create, :destroy] -Wie Funktionsimplementierung
end

Modelleinstellungen

** LIKE-Klausel ** Die LIKE-Klausel kann nach einer Zeichenfolge suchen. Wird mit der where-Methode verwendet.

Ausführungsbeispiel Einzelheiten
where('title LIKE(?)', "a%") Titel beginnend mit a
where('title LIKE(?)', "%b") Titel mit der Endung b
where('title LIKE(?)', "%c%") Titel mit c
where('title LIKE(?)', "d_") Titel aus zwei Buchstaben beginnend mit d
where('title LIKE(?)', "_e") Titel aus zwei Buchstaben, der mit e endet

app/models/post.rb


def self.search(search)
  return Post.all unless search
  Post.where('body LIKE(?)', "%#{search}%")
end

Suchaktion im Controller definieren

post_controller.rb


def search
  @posts = Post.search(params[:keyword])
end

Implementierung anzeigen

Angenommen, Sie erstellen eine Teilvorlage mit der ** Rendermethode **. ** post ** rechts von {post: post} ist ** post ** als Variable in jeder Methode und gibt eine Instanz von ** post ** an. Der ** Beitrag ** links repräsentiert den Namen der Variablen in der Teilvorlage.

search.html.erb


<% @posts.each do |post| %>
   <%= render partial: "post", locals: { post: post } %>
<% end %>

abschließend

Die Implementierung der Suchfunktion war relativ einfach abzuschließen. Ich werde andere Funktionen implementieren und meine Möglichkeiten erweitern. Danke, dass du bis zum Ende zugesehen hast: grins:

Recommended Posts

Implementierung der Suchfunktion
Implementierung der sequentiellen Suchfunktion
Implementierung der Pagenationsfunktion
Suchfunktion [Implementierung kopieren und einfügen]
[Rails] Implementierung der Suchfunktion mit Gem's Ransack
Implementierung der Fuzzy-Suchfunktion für Schienen
Implementierung einer ähnlichen Funktion (Ajax)
Implementierung der Bildvorschau
[Rails] Implementierung der Kategoriefunktion
Implementierung der Kategorie-Pulldown-Funktion
Implementierung der Suchfunktion Lernnotiz (Portfolioerstellung)
[Rails] Implementierung der Tutorial-Funktion
[Rails] Implementierung einer ähnlichen Funktion
[Rails] Implementierung der CSV-Importfunktion
[Rails] Asynchrone Implementierung der Like-Funktion
[Rails] Implementierung der Bildvorschau
[Rails] Implementierung der Benutzerrückzugsfunktion
[Rails] Implementierung der CSV-Exportfunktion
Implementierung einer ähnlichen Funktion in Java
Implementierung der DM-Funktion
Implementierung der Benutzerauthentifizierungsfunktion mit devise (2)
Implementierung der Benutzerauthentifizierungsfunktion mit devise (1)
Rails [Für Anfänger] Implementierung der Kommentarfunktion
Implementierung der Benutzerauthentifizierungsfunktion mit devise (3)
[Ruby on Rails] Implementierung einer ähnlichen Funktion
Implementierung der Rails-Hashtag-Suche
Implementierung der Ruby on Rails-Anmeldefunktion (Sitzung)
[Rails] Implementierung der Bildvergrößerungsfunktion mit Lightbox2
Implementierung der Kommentarfunktion (Ajax)
Implementierung der Ajax-Funktion (Follow Function)
Implementierung der Bildvorschau-Funktion
[JQuery] Implementierungsverfahren der AutoComplete-Funktion [Java / Spring]
Angewandte Implementierung von Chat-Space
Implementierung der Löschfunktion (wenn Sie einen fremden Schlüssel haben)
[Rails] Implementierung der Drag & Drop-Funktion (mit Wirkung)
Implementierung der Ruby on Rails-Anmeldefunktion (Devise Edition)
[Rails] Implementierung einer mehrschichtigen Kategoriefunktion unter Verwendung der Abstammung "Vorbereitung"
[Rails] Implementierung einer mehrschichtigen Kategoriefunktion unter Verwendung der "Seed Edition" der Vorfahren
Hinzufügung der Gastanmeldefunktion
Implementierung der Ajax-Entfernung in Rails
[Schienen] Implementieren Sie die Benutzersuchfunktion
Suchfunktion mit [Rails] Ransack
Kombination von Suche und jedem_mit_Index
[Java] Implementierung des Faistel-Netzwerks
Implementierung von XLPagerTabStrip mit TabBarController