RESTful routing is a fundamental concept in Ruby on Rails that simplifies the implementation of CRUD (Create, Read, Update, Delete) operations in web applications. In this article, we’ll dive into RESTful routing in Rails with practical code examples to help you understand and implement it effectively in your projects.
Grundlegendes zum RESTful-Routing in Rails
RESTful routing is based on the idea that web applications should follow a set of conventions for handling different types of requests. These conventions map HTTP verbs (GET, POST, PUT, DELETE) to controller actions and make your application’s behavior more predictable and consistent.
1. Eine Ressource erstellen
Let’s start by creating a simple resource, say, “articles.”
#-Terminal
Schienen erzeugen Gerüst Artikeltitel:String Body:Text
Dieser Befehl generiert eine neue Ressource, einschließlich eines Controllers (ArticlesController) und Ansichten für CRUD-Operationen.
2. Aktionen indizieren und anzeigen
Die Aktion „Index“ listet alle Artikel auf und die Aktion „Anzeigen“ zeigt einen bestimmten Artikel an.
# app/controllers/articles_controller.rb
Klasse ArticlesController < ApplicationController
Def-Index @articles = Article.all
Ende
auf jeden Fall zeigen
@article = Article.find(params[:id])
Ende
Ende
3. Aktionen „Neu“ und „Erstellen“.
Die neue Aktion zeigt ein Formular zum Erstellen eines neuen Artikels an, während die Aktion „Erstellen“ die Formularübermittlung übernimmt und einen neuen Datensatz in der Datenbank erstellt.
# app/controllers/articles_controller.rb
Klasse ArticlesController < ApplicationController
# …
auf jeden Fall neu
@article = Article.new
Ende
auf jeden Fall erstellen
@article = Article.new(article_params)
wenn @article.save
Redirect_to @article
anders
render ‘new’
Ende
Ende
Privat
def Article_params
params.require(:article).permit(:title, :body)
Ende
Ende
4. Aktionen bearbeiten und aktualisieren
Die Bearbeitungsaktion zeigt ein Formular zum Aktualisieren eines vorhandenen Artikels an, und die Aktualisierungsaktion verarbeitet die Formularübermittlung und aktualisiert den Artikeldatensatz.
# app/controllers/articles_controller.rb
Klasse ArticlesController < ApplicationController
# …
auf jeden Fall bearbeiten
@article = Article.find(params[:id])
Ende
auf jeden Fall Update
@article = Article.find(params[:id])
if @article.update(article_params)
Redirect_to @article
anders
render ‘edit’
Ende
Ende
# …
Ende
5. Aktion „Zerstören“.
Die Zerstörungsaktion löscht einen Artikel aus der Datenbank.
# app/controllers/articles_controller.rb
Klasse ArticlesController < ApplicationController
# …
auf jeden Fall zerstören
@article = Article.find(params[:id])
@article.destroy
Redirect_to Articles_Pfad
Ende
Ende
6. Routenkonfiguration
In Ihrer Datei config/routes.rb generiert Rails automatisch RESTful-Routen für Ihre Ressource.
# config/routes.rb
Rails.application.routes.draw tun
Ressourcen: Artikel
# …
Ende
Mit diesen Routen unterstützt Ihre Rails-Anwendung jetzt alle Standard-CRUD-Operationen für Artikel.
Abschluss
RESTful-Routing in Rails bietet eine strukturierte und effiziente Möglichkeit, CRUD-Vorgänge in Ihren Webanwendungen abzuwickeln. Indem Sie diese Konventionen befolgen und Codebeispiele wie die in diesem Artikel bereitgestellten verwenden, können Sie schnell leistungsstarke und wartbare Codes erstellen Webanwendungen mit Ruby on Rails.