[RUBY] Fragen zur Implementierung der Like-Funktion (Ajax) in Rails

Überblick

Die Ajax-Verarbeitung funktioniert nicht gut, wenn Sie ein Portfolio erstellen und Likes mit Ajax implementieren Dieser Beitrag https://qiita.com/naota7118/items/e009eff939b5a764672d#%E4%BB%8A%E5%9B%9E%E8%8B%A6%E5%8A%B4%E3%81%97%E3%81%9F%E3%81%A8%E3%81%93%E3%82%8D Ich habe es gelesen und gelöst. Aber, Wie Sie in diesem Artikel sehen können

<%= button_to question_like_path(question, id: question.likes[0].id), class:"btn btn-primary like", method: :delete , remote:true do %>

Ich habe nicht verstanden, warum die Zerstörungsaktion, die meine Likes löscht, mit diesem Code funktioniert (`` `id: question.likes [0] .id``` löscht das 0. Like von Likes, die mit der Frage verknüpft sind, ohne Frage und Antwort, sodass ich nicht garantieren kann, mein Like zu löschen? T)

Ich drehte meinen Kopf und verstand es, also werde ich es als Memorandum belassen.

Fazit

Weil das Gleiche, das auf der Seite der Zerstörungsaktion gelöscht werden soll, mit current_user gefunden wird

  def destroy
    @like = @question.likes.find_by(user_id: current_user.id)
    @like.destroy
    #Root vorerst, bis Ajax später implementiert wird
    respond_to do |format|
      format.html { redirect_to @like.question || root_url}
      format.js
    end
  end

question_like_pathObwohl die Frage und gerne gelöscht werden, sind als Argumente erforderlich Wenn Sie "Gefällt mir" nicht angeben, können Sie keine URL generieren. Daher wird stattdessen "Gefällt mir" [0] verwendet. Der zu löschende Lieblingsbenutzer verwendet jedoch die Methode `` `current_user```. Dies ist hier irrelevant, da es von find_by in der Zerstörungsaktion erfasst wird.

Das Aussehen hat mich getäuscht. .. ..

Recommended Posts

Fragen zur Implementierung der Like-Funktion (Ajax) in Rails
Über das Symbol <%%> in Rails erb
So implementieren Sie eine ähnliche Funktion in Rails
Ich habe versucht, die Ajax-Verarbeitung der ähnlichen Funktion in Rails zu implementieren
[Rails] Über die Implementierung der Like-Funktion
Hinzufügen der ersten Paginierungsfunktion in Schienen
Ich habe den Ablauf bis zur Implementierung von simple_calendar in Ruby on Rails zusammengefasst.
[Schienen] Über den Fehler, dass das Bild nicht in der Produktionsumgebung angezeigt wird
Die Identität der Schienenparameter [: id]
Rails Refactoring Geschichte vor Ort gelernt
[Rails] Über local: true, beschrieben in form_with
[Rails] Setzen Sie die Datenbank in der Produktionsumgebung zurück
Rails6: Extrahieren Sie das Bild im Aktionstext
Über Schienen 6
Über den Fall, in dem der Freeter "Docker" versucht hat, Docker in die vorhandene Rails-Anwendung einzufügen
[Bestellmethode] Legen Sie die Reihenfolge der Daten in Rails fest
Über die Verwirrung beim Starten von Java-Servern
Denken Sie an die Kombination von Servlet und Ajax
[Rails / Active Record] Über den Unterschied zwischen create und create!
Über die Idee anonymer Klassen in Java
Eine Geschichte über das JDK in der Java 11-Ära
Ich habe versucht, die Sitzung in Rails zu organisieren
Rails-Tutorial Informationen zur Kontoaktivierung in der Produktionsumgebung
[Schienen] Mehrstufige Kategorien in der Ausschussliste anzeigen
Ein Memo über den Fluss von Rails und Vue
So überprüfen Sie Rails-Befehle im Terminal