[Einführung] Erstellen Sie eine Ruby on Rails-Anwendung

Einführung

Ich habe neulich mein Debüt in Ruby on Rails bei der Arbeit gegeben. Als ich über Rails sprach, hatte ich den großen Eindruck, dass ein Webdienst mit Bildschirmanzeige erstellt wurde, aber bei der Arbeit wurde die API mit Rails erstellt. Hier werde ich also versuchen, sowohl einen Webdienst als auch eine API zu erstellen.

Umgebung

Windows 10 Home 64-Bit

Wie Rails funktioniert

Rails arbeitet mit einem Mechanismus, der auf dem MVC-Modell basiert. MVC kommt von den Akronymen "Model", "View" und "Controller" und wird häufig bei der Entwicklung von Anwendungen mit Rails verwendet.

Erstellung von Webdiensten

Erstellen Sie einen Webbildschirm, auf dem die für Anfänger übliche "Hallo Welt" angezeigt wird.

1. 1. Erstellen Sie ein neues Projekt

Führen Sie den folgenden Befehl aus, um ein neues Projekt für den Webdienst zu erstellen.

Befehlszeile


Schienen neuer Anwendungsname

* Informationen zur Ordnerstruktur

Die Ordnerstruktur unter dem Anwendungsordner befindet sich in Rails Documents. Sie können dies unter "Was ist Ruby on Rails> Ordnerstruktur> Ordnerliste" überprüfen.

2. Controller erstellen

Führen Sie den folgenden Befehl aus, um den Controller zu erstellen. Wechseln Sie beim Erstellen eines Controllers in den zuvor erstellten Anwendungsordner und erstellen Sie ihn anschließend.

Befehlszeile


CD-Anwendungsordner
Schienen erzeugen den Controller-Controller-Namen
* Hier lautet der Controller-Name "hello_world".

Der Controller "hello_world_controller.rb" wurde im Ordner "app / controller" erstellt. Der Quellcode zum Zeitpunkt der Generierung lautet wie folgt.

hello_world_controller.rb


class HelloWorldController < ApplicationController
end

3. 3. Eine Aktion erstellen

Die in der Steuerung definierte Methode wird als Aktion bezeichnet. Bearbeiten Sie die zuvor erstellte Datei "hello_world_controller.rb" und versuchen Sie, die Aktion "index" zu definieren.

hello_world_controller.rb


class HelloWorldController < ApplicationController
  def index
  end
end

* Batch-Erstellung von Controller und Aktion

Hier wurden der Controller und die Aktion separat erstellt, es ist jedoch auch möglich, sie beim Erstellen des Controllers alle gleichzeitig zu erstellen. Führen Sie den folgenden Befehl aus, um alle auf einmal zu erstellen.

Befehlszeile


Schienen erzeugen Controller Controller-Name Aktionsname 1 Aktionsname 2...

#Beispiel
rails generate controller hoge index create

4. Ansicht hinzufügen

Fügen Sie im Ordner "app / views / hello_world" die Ansicht "index.html.erb" hinzu, die der Indexaktion entspricht.

Da davon ausgegangen wird, dass diesmal "Hello World" angezeigt wird, beschreiben Sie Folgendes in "index.html.erb".

html:index.html.erb


<h1>Hello World</h1>

5. Routing-Einstellungen hinzugefügt

Empfangen Sie eine Anfrage vom Browser und fügen Sie eine Einstellung hinzu, die an den Controller verteilt werden soll. Die zu ändernde Datei lautet "route.rb" im Ordner "config".

routes.rb


Rails.application.routes.draw do
  # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
  get '/helloworld', to: 'hello_world#index'
end

Sie können das Format unter "Routendefinition" in Rails-Dokument überprüfen. Dieses Mal habe ich die get-Methode beschrieben, die der GET-Anforderung entspricht.

6. Starten Sie den Rails-Server

Führen Sie den folgenden Befehl aus, um den Rails-Server zu starten.

Befehlszeile


rails s

7. Überprüfen Sie den Vorgang im Browser

Gehen Sie zu http: // localhost: 3000 / helloworld.

API-Erstellung

Erstellen Sie eine API, die "Hello World" im JSON-Format zurückgibt. Der allgemeine Ablauf ist der gleiche wie für Webdienste.

1. 1. Erstellen Sie ein neues Projekt

Führen Sie den folgenden Befehl aus, um ein neues Projekt für die API zu erstellen. Fügen Sie einem normalen Befehl --api hinzu und erstellen Sie ein Projekt im API-Modus.

Befehlszeile


Schienen neuer Anwendungsname--api

2. Controller und Aktionen erstellen

Der Ausführungsbefehl ist der gleiche wie der Webdienst. Dieses Mal erstellen wir einen Controller und eine Aktion gleichzeitig. Der Controller-Name und der Aktionsname sind dieselben wie für den Webdienst. Hier können Sie die Auswirkungen des API-Modus beim Erstellen eines Projekts sehen. Wenn Sie einen Controller normal erstellen, werden gleichzeitig auch Dateien erstellt, die sich auf Ansichten wie Ansicht, Hilfsprogramm und Asset beziehen. Diese Dateien werden jedoch nicht erstellt, da für die API keine Ansichten erforderlich sind.

3. 3. Controller bearbeiten

Fügen Sie einen Prozess hinzu, um "Hello World" im JSON-Format zurückzugeben.

hello_world_controller.rb


class HelloWorldController < ApplicationController
  def index
    render json: { data: "Hello World" }
  end
end

4. Ändern Sie die Routing-Einstellungen

Aufgrund der Stapelerstellung von Controllern und Aktionen werden Routing-Einstellungen automatisch hinzugefügt, aber wir ändern sie.

Vorher ändern_routes.rb


Rails.application.routes.draw do
  get 'hello_world/index'
  # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end

Nach der veränderung_routes.rb


Rails.application.routes.draw do
  get '/helloworld', to: 'hello_world#index'
  # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end

5. Starten Sie den Rails-Server

Führen Sie den folgenden Befehl aus, um den Rails-Server zu starten.

Befehlszeile


rails s -p 3001

6. Führen Sie den Befehl curl aus und überprüfen Sie die Operation

Führen Sie den folgenden Befehl aus und bestätigen Sie, dass JSON zurückgegeben wird.

Befehlszeile


curl --request GET --url http://localhost:3001/helloworld
"Hello World" ist wieder sicher in JSON!

Recommended Posts

[Einführung] Erstellen Sie eine Ruby on Rails-Anwendung
Vorbereiten der Erstellung einer Rails-Anwendung
[Ruby on Rails] Versuchen Sie, einen Service zu erstellen, der einheimische Katzen glücklich macht
(Ruby on Rails6) Erstellen Sie eine Funktion zum Bearbeiten des veröffentlichten Inhalts
So erstellen Sie eine Abfrage mithilfe von Variablen in GraphQL [Verwenden von Ruby on Rails]
(Ruby on Rails6) So erstellen Sie ein Modell und eine Tabelle
[Ruby on Rails] Leseversuch (: [],: Schlüssel)
Verwendung von Ruby on Rails
Versuchen Sie, eine Server-Client-App zu erstellen
Versuchen Sie "Einführung in Vert.x" mit Gradle
<Punktinstallation> Einführung in Ruby on Rails5 Vergleich des Quellcodes
So zeigen Sie Diagramme in Ruby on Rails an (LazyHighChart)
Wenden Sie CSS auf eine bestimmte Ansicht in Ruby on Rails an
So stellen Sie die Rails-Anwendung in AWS bereit (Artikelzusammenfassung)
[Ruby on Rails] Einführung der Anfangsdaten
Einführung in Ruby 2
Ruby on Rails - Von der Umgebungskonstruktion bis zur einfachen Anwendungsentwicklung auf WSL2
Ich möchte eine Browsing-Funktion mit Ruby on Rails hinzufügen
Versuchen Sie, die Rails-App für EC2-Teil 1 bereitzustellen.
Ich erhalte einen Ruby-Versionsfehler, wenn ich versuche, Rails zu starten.
Bereitstellen für Heroku [Ruby on Rails] Anfänger
Befehl zum Erstellen / Löschen des Ruby on Rails-Controllers
Vorbereiten der Einführung von jQuery in Ruby on Rails
Ruby on Rails-Anwendung neuer Erstellungsbefehl
[Ruby on Rails] Verwendung von redirect_to
[Rails] So erstellen Sie eine Teilvorlage
Anfänger haben mit Ruby on Rails ein Portfolio erstellt
[Ruby on Rails] Schaltfläche, um nach oben zurückzukehren
Schritte zum Erstellen einer Ruby on Rails-Entwicklungsumgebung mit Vagrant
Wechseln Sie in einem neuen Ruby on Rails-Projekt von SQLite3 zu PostgreSQL
[Ruby on Rails] Erstellen Sie mit Chartick ein kreisförmiges Diagramm der Summen nach Spalten
So erstellen Sie eine Ruby on Rails-Entwicklungsumgebung mit Docker (Rails 6.x)
Umfang des Versuchs, eine Java-Webanwendung unter Windows Server 2016 zu erstellen
So erstellen Sie eine Ruby on Rails-Entwicklungsumgebung mit Docker (Rails 5.x)
Bereitstellung auf Ruby on Rails Elastic Beanstalk (EB-Bereitstellung)
[Ruby on Rails] Bis zur Einführung von RSpec
[Rails] Rails neu, um eine Datenbank mit PostgreSQL zu erstellen
[Rails] So erstellen Sie ein Diagramm mit lazy_high_charts
Versuchen Sie, ein Bulletin Board in Java zu erstellen
[Ruby on Rails] Select2-Einführungsnotiz für Webpacker
Einführung in Rspec, ein Testframework für Ruby on Rails
[Ruby on Rails] Ein Memorandum mit Layoutvorlagen
Versuchen Sie, die Rails-App für EC2-Part 2 (Server Construction) bereitzustellen.
So erstellen Sie einfach ein Pulldown mit Rails
[Rails] So erstellen Sie eine Twitter-Freigabeschaltfläche
(Ruby on Rails6) Erstellen von Daten in einer Tabelle
Ich habe mit Ruby On Rails ein Portfolio erstellt
Ruby on Rails Elementary
Ruby on Rails Grundlagen
Ruby On Rails Association
[Rails] Erstellen Sie eine Anwendung
[Erste Umgebungskonstruktion] Ich habe versucht, eine Rails6 + MySQL8.0 + Docker-Umgebung unter Windows 10 zu erstellen.