[RUBY] Ich habe die Punkte zusammengefasst, die bei der kombinierten Verwendung von Ressourcen und Ressourcen zu beachten sind

Neulich habe ich die Unterschiede zwischen Ressourcen und Ressourcen zusammengefasst, aber es gab einige Punkte zu beachten, wenn ich sie in Kombination verwende, also habe ich sie zusammengefasst. Klicken Sie hier für den Unterschied → Unterschied zwischen Ressourcen und Ressourcen - Qiita

Bei Verwendung von Ressourcen in Kombination mit Ressourcen

Durch die kombinierte Verwendung von Ressourcen können Sie auf einfache Weise das folgende Routing generieren.

--Listenanzeige aller Benutzer

Jeder kann die Liste aller Benutzer und die Details jedes Benutzers anzeigen, aber nur seine eigenen Benutzerinformationen können bearbeitet werden.

config/routes.rb


  resources :users, only: [:index, :show]
  resource :user, only: [:show, :edit, :update]

Wenn man sich die Routen ansieht, die durch "Schienenrouten" erzeugt werden, sieht es wie folgt aus.

Terminal


   Prefix Verb  URI Pattern          Controller#Action
    users GET   /users(.:format)     users#index
     user GET   /users/:id(.:format) users#show
edit_user GET   /user/edit(.:format) users#edit
          GET   /user(.:format)      users#show
          PATCH /user(.:format)      users#update
          PUT   /user(.:format)      users#update

user GET / users /: id (.: Format) Der Teil von users # show, user_path wird / users /: id zugewiesen, sodass die Hilfsmethode, die / user zurückgeben soll, nicht generiert wird. Also habe ich versucht, es in umgekehrter Reihenfolge zu beschreiben.

config/routes.rb


  resource :user, only: [:show, :edit, :update]
  resources :users, only: [:index, :show]

Wenn man sich die Routen ansieht, die durch "Schienenrouten" erzeugt werden, sieht es wie folgt aus.

Terminal


   Prefix Verb  URI Pattern          Controller#Action
edit_user GET   /user/edit(.:format) users#edit
     user GET   /user(.:format)      users#show
          PATCH /user(.:format)      users#update
          PUT   /user(.:format)      users#update
    users GET   /users(.:format)     users#index
          GET   /users/:id(.:format) users#show

Wenn der lokale Benutzer durch die Anmeldefunktion (Sitzungsverwaltung) identifiziert werden kann, muss Folgendes nicht angegeben werden: id, sodass das Routing für den lokalen Benutzer "resource" verwendet.

Um den Detailbildschirm anderer Benutzer als Sie selbst anzuzeigen, muss die ID des Zielbenutzers angegeben werden, sodass "Ressourcen" eine Route generiert, die Folgendes enthält: ID in der Anforderung.

Fazit

Wenn Sie ein Routing erstellen, indem Sie "Ressource" in der Singularform und "Ressourcen" in der Pluralform kombinieren, schreiben Sie die Singularform "Ressource" oben.

Recommended Posts

Ich habe die Punkte zusammengefasst, die bei der kombinierten Verwendung von Ressourcen und Ressourcen zu beachten sind
Bei Verwendung von Modulen mit Gradle und IntelliJ können keine Ressourcen abgerufen werden
Ich bin gestolpert, als ich versucht habe, neo4j in der jenv-Umgebung zu verwenden. Machen Sie sich also eine Notiz
Vorsichtsmaßnahmen bei der Verwendung von Spring AOP mit Jersery-Ressourcenklassen
[jOOQ] Wie in der WHERE / AND / OR-Klausel WANN FALLEN
So beheben Sie den unbekannten Fehler, der bei der Verwendung von slf4j in Java aufgetreten ist
[Rails] Ich war süchtig nach den Nginx-Einstellungen, als ich Action Cable verwendete.
Eine Geschichte, der ich beim Testen der API mit MockMVC verfallen war
Ich habe versucht, die wichtigsten Punkte des gRPC-Designs und der Entwicklung zusammenzufassen
[Hinweis] Ich möchte mit afterLast mit JdbcTemplate in umgekehrter Reihenfolge arbeiten
Ich möchte die IP-Adresse erhalten, wenn ich mit Java eine Verbindung zu Wi-Fi herstelle
Ich möchte bei der Registrierung in der Datenbank eine Fehlermeldung anzeigen
Ich habe versucht, die Sitzung in Rails zu organisieren
Wenn Eclipse den Server nicht starten kann
Verwendung von Segmented Control und zu notierenden Punkten
Ein Hinweis, wenn ich süchtig danach bin, Docker Hub Vault im Servermodus zu verwenden
[JDBC ③] Ich habe versucht, mithilfe von Platzhaltern und Argumenten Eingaben über die Hauptmethode vorzunehmen.
Seien Sie vorsichtig mit Anfragen und Antworten, wenn Sie das Serverless Framework mit Java verwenden
Ich möchte den Wert in Ruby erhalten
Ich möchte eine Verbindung herstellen, wenn eine Datenbank mit Spring und MyBatis erstellt wird
N Dinge, die Sie beim Lesen von "Einführung in den Frühling" und "Einführung in den Frühling" in der Reiwa-Ära beachten sollten
Ich möchte das in der Datenbank gespeicherte Protokoll morphologisch analysieren und in der Datenbank speichern, um Nachrichten 1 zu klassifizieren
So erhalten Sie den Klassennamen des Arguments von LoggerFactory.getLogger, wenn Sie SLF4J in Java verwenden
[Swift] So zeigen Sie die eingegebenen Zeichen im Widget über UserDefaults an, wenn Sie das WidgetKit verwenden
Ich war süchtig nach NoSuchMethodError in Cloud-Endpunkten
Ich möchte eine TraceId in das Protokoll einbetten
Tokoro habe ich in der Migration von Wicket 7 auf 8 umgeschrieben
# 2 [Anmerkung] Ich habe versucht, neunundneunzig mit Java zu berechnen.
Ich möchte den Bereich anhand des monatlichen Abschlusses beurteilen
Dinge, die Sie bei der Verwendung der if-Anweisung beachten sollten
In der Abbildung verstandene Java-Klassen und -Instanzen
Ich habe die Typen und Grundlagen von Java-Ausnahmen zusammengefasst
So konvertieren Sie A in a und a in A mit logischem Produkt und Summe in Java
Ich möchte die Hauptmethode mit Reflektion aufrufen
Ich habe versucht, die Methode der gegenseitigen Teilung von Eugrid in Java zu implementieren
Unterschiede im Code bei Verwendung des Längensystems in Java
Als ich zu IntelliJ wechselte, gab es einen großen Unterschied in der Codierung der Eigenschaftendatei.
In Java möchte ich mehrere angegebene Zeichen nur von Anfang bis Ende abschneiden.
Ich steckte in einer Falle fest, als ich meine eigenen Klassen equals und hashCode in Java mit IDE generierte
So lösen Sie das Problem, wenn der Wert nicht gesendet wird, wenn das Formular in Schienen deaktiviert und gesendet wird
Bei der Verwendung von nextInt, nextLine und substring ist ein Fehler aufgetreten.
Testen des Einschlusses von Bildern bei Verwendung von ActiveStorage und Faker
Wovon ich bei der Einführung der JNI-Bibliothek süchtig war
Ich möchte einen relativen Pfad in einer Situation finden, in der Pfad verwendet wird
So stellen Sie die Chronik ein, wenn sich die Zeit in CentOS7 verschiebt
Ich habe versucht, die Grundlagen von Kotlin und Java zusammenzufassen
Ich möchte Tomcat auf den Server bringen und die Anwendung starten
Ich möchte eine Methode aufrufen und die Nummer zählen
Ich habe JAX-RS ausprobiert und mir das Verfahren notiert
Hier sind einige Artikel, auf die sich Anfänger in der Programmierung bezogen haben.
Ich habe versucht, die Umgebung nach und nach mit Docker aufzubauen
Hat zu Gradle beigetragen und wurde im Release Note genannt