Erklärung von Ruby auf Schienen für Anfänger ①

Einführung

Diesmal ist ein Kommentar zu Ruby on Rails.

Ich werde es Anfängern leicht verständlich erklären.

Mach weiter.

Dieses Mal werden wir Takashi-kun bitten, beim Schreiben des Artikels zusammenzuarbeiten.

Was ist Ruby on Rails?

Ruby on Rails ist eine Art Webframework.

Zunächst werde ich erklären, was ein Framework überhaupt ist.

Was ist ein Framework?

Ein Frame ist einfach ein "Framework".

Fragen Sie den Wikipedia-Lehrer, was das Framework bedeutet.

Bei der Programmierung handelt es sich um ein abstraktes Konzept, bei dem versucht wird, dem Benutzer eine bestimmte Funktion zuzuweisen, indem er allgemeinen Code mit einer allgemeinen Funktion selektiv überschreibt oder spezialisiert.

Es ist immer noch ein hartes Wort, also werde ich es aufschlüsseln und erklären.

Ich denke, es ist in Ordnung, sich ein Framework als "Framework mit verschiedenen Funktionen" vorzustellen.

Schauen wir uns nun ein konkretes Beispiel für das Framework an.

Bootstrap Wenn Sie versuchen, eine Website zu erstellen, ist es schwierig, HTML und CSS kontinuierlich zu schreiben.

Natürlich möchte ich es einfacher machen. Wie kann ich es einfacher machen?

Das ist richtig, Sie können es genießen, wenn Sie etwas packen, das jemand gemacht hat.

Wenn die Website jedoch so verwendet wird, wie sie ist, wird sie wütend und die Variationen, die erstellt werden können, sind begrenzt.

Dachte Takashi hier.

Takashi-kun "Übrigens sind die für die Website verwendeten Teile begrenzt. Wenn es ein" Framework "gibt, das es einfach macht, den Header-Teil und den Button-Teil einzeln zu platzieren, ist es nicht einfach zu schreiben?"

So wurde der Bootstrap geboren.

Bootstrap ist ein CSS-Framework, das für jeden Teil Ihrer Website ein partielles Framework bereitstellt.

Was ist ein Webframework?

Sie können aus der bisherigen Erklärung verstehen.

Ein Webframework ist ein "Framework zum Erstellen von Webanwendungen".

Fragen wir Takashi noch einmal.

Takashi-kun "Es ist schrecklich, eine Webanwendung zu erstellen. Sie ist jedoch auf andere Funktionen als die in der Webanwendung verwendeten beschränkt. Sie können die Datenbank gemäß der vom Benutzer eingegebenen URL betreiben, eine HTML-Datei erstellen und senden. Sie brauchen nur eine Anmeldefunktion. Jemand kann dieses "Framework" erstellen und Sie können es einfach schreiben, oder? "

Das Ergebnis ist das Webframework und Ruby on Rails.

Lassen Sie uns nun eine App mit Ruby on Rails erstellen.

Erstellen eines Skeletts (Schienen neu)

Installieren Sie zuerst Ruby und Ruby auf Schienen auf Ihrem lokalen Computer.

Verschiedene Leute haben Artikel über Umweltkonstruktion geschrieben, deshalb werde ich sie weglassen.

In den meisten Fällen funktioniert das Erstellen einer Umgebung nicht. Bitte untersuchen Sie dies weiter, bis Sie können. Ich unterstütze dich.

Wechseln Sie zunächst in das Verzeichnis, in dem Sie die Rails-App erstellen möchten, und geben Sie den folgenden Befehl ein.

rails new qiita_project

Bitte verwenden Sie einen beliebigen Namen nach "neu".

Die Datei wird wie folgt erstellt.

image.png

Sie haben jetzt ein "Framework" zum Erstellen einer Web-App erstellt.

Rails Server

Gehen Sie zu dem von Ihnen erstellten qiita_project.

cd qiita_project

Sie können jetzt zu dem von Ihnen erstellten "qiita_project" wechseln.

Als nächstes starten wir den Server. Der folgende Befehl.

rails server

Geben Sie als Nächstes die folgende URL in das URL-Feld Ihres Browsers ein, z. B. Chrome.

http://localhost:3000/

image.png

Zu diesem Zeitpunkt haben Sie den Server gestartet.

Controller erstellen (Schienen generieren Controller-Controller-Namen)

Sie können einen Controller mit dem folgenden Code erstellen.

Wir werden später sehen, was der Controller macht.

rails generate controller home

Wenn Sie den obigen Code ausführen, wird unter app >> controller eine Datei mit dem Namen "home_controller.rb" erstellt.

image.png

Werfen wir einen Blick auf den Inhalt von home_controller.

home_controller.rb


class HomeController < ApplicationController

end

Auf diese Weise konnte ich einen Controller erstellen.

Lassen Sie uns nun den Controller erklären.

Was ist ein Controller?

Um den Controller zu verstehen, müssen Sie zuerst die folgende Abbildung verstehen. Es geht um den Mechanismus, mit dem die Schiene funktioniert.

image.png

Schauen wir sie uns der Reihe nach an.

① Der Benutzer sendet eine Anfrage an den Server

image.png

Zunächst sendet der Benutzer links eine Anfrage an den Server. Die verschiedenen Aktionen auf der rechten Seite sind alle serverseitige Geschichten.

"Senden einer Anfrage" bedeutet, etwas vom Server anzufordern. Wenn Sie beispielsweise eine URL eingeben, werden Sie gefragt (Anfrage erhalten) "Bitte senden Sie die dieser URL entsprechende Datei!". Wenn Sie versuchen, sich mit Ihrer ID und Ihrem Passwort anzumelden, werden Sie gefragt, ob Sie die Daten senden möchten. Verwenden Sie es, um etwas zu tun! ”Wird angefordert (Post-Anfrage).

② Entscheiden Sie, welchen Controller Sie durch Routing verwenden möchten

image.png

Durch das Routing verarbeiten wir die vom Benutzer empfangene URL.

Angenommen, Sie erhalten die URL "home / top" von einem Benutzer.

Das Routing wird dann in ein Routing mit dem Namen "home # top" übersetzt.

Dies bedeutet "Verwenden Sie die oberste Aktion des Home-Controllers". Stellen Sie sich eine Aktion als "Code, der etwas tut" vor, der für jeden Controller festgelegt wird.

Der Einfachheit halber denke ich, dass der Benutzer diesmal "Anfrage anfordern" angefordert hat (bitte senden Sie die dieser URL entsprechende Datei! ".

Lassen Sie uns die URL "home / top" vom Benutzer zum Befehl weiterleiten, um die oberste Aktion des Home-Controllers auszuführen.

Fügen Sie der Datei route.rb im Konfigurationsverzeichnis Folgendes hinzu.

routes.rb


Rails.application.routes.draw do
  get "home/top" => "home#top"
end

Durchsuchen Sie die Ansichtsdatei mit dem Controller

image.png

Angenommen, ein Benutzer sendet Ihnen die URL "home / top" und sie wird durch Routing in "home # top" konvertiert.

In diesem Fall führen Sie die oberste Aktion des Home-Controllers aus.

Fügen wir dem Home-Controller die oberste Aktion wie folgt hinzu.

home_controller.rb


class HomeController < ApplicationController
    def top
    end
end

Wenn Sie Code wie diesen schreiben, sucht der Home-Controller nach der Datei home / top.html.erb und gibt sie an den Benutzer zurück.

Ansichtsdatei erstellen

App >> Ansichten Fügen Sie die Datei top.html.erb zum Home-Verzeichnis darunter hinzu.

image.png

Bearbeiten Sie die Datei top.html.erb wie folgt.

top.html.erb


<h1>Hello World</h1>

Auf diese Weise konnte ich eine Ansichtsdatei erstellen.

Lassen Sie uns die Antwort sehen.

Wenn der Benutzer die URL eingibt

Starten wir den Server erneut mit dem folgenden Code.

rails server

Geben Sie die folgende URL in Ihren Webbrowser ein.

http://localhost:3000/home/top

Dann wird der folgende Bildschirm gesendet.

image.png

Werfen wir einen kurzen Blick darauf, was passiert.

Wenn die URL "http: // localhost: 3000 / home / top" gesendet wird, wird sie durch Routing in "home # top" konvertiert.

Dadurch wird die oberste Aktion des Home-Controllers ausgeführt.

Dann finden Rails die Datei top.html.erb im Home-Verzeichnis unter dem Verzeichnis app >> views und senden sie an den Benutzer.

Am Ende

Es wird länger, also ist es diesmal bis hierher.

Ich hoffe, Sie werden auch den nächsten Artikel lesen.

Erklärung von Ruby on Rails für Anfänger ② ~ Erstellen von Links ~

Erklärung von Ruby on Rails für Anfänger ③ ~ Erstellen einer Datenbank ~

Erklärung von Ruby on Rails für Anfänger ④ ~ Verwendung von Namensregeln und form_Tag ~

Erklärung von Ruby on Rails für Anfänger ⑤ ~ Datenbank bearbeiten und löschen ~

Erklärung von Ruby on Rails für Anfänger ⑥ ~ Erstellung der Validierung ~

Erklärung von Ruby on Rails für Anfänger ⑦ ~ Implementierung von Flash ~

Danke für deine harte Arbeit.

Recommended Posts

Erklärung von Ruby auf Schienen für Anfänger ①
Erklärung von Ruby auf Schienen für Anfänger ⑥ ~ Erstellung der Validierung ~
Erklärung von Ruby on Rails für Anfänger ② ~ Links erstellen ~
Erklärung von Ruby on Rails für Anfänger ⑦ ~ Flash-Implementierung ~
Erklärung von Ruby on Rails für Anfänger ③ ~ Erstellen einer Datenbank ~
Erklärung von Ruby on Rails für Anfänger ⑤ ~ Datenbank bearbeiten und löschen ~
[Verfahren 1 für Anfänger] Ruby on Rails: Aufbau einer Entwicklungsumgebung
Erklärung von Ruby on Rails für Anfänger ④ ~ Informationen zu Benennungsregeln und zur Verwendung von form_Tag ~
Grundkenntnisse in Ruby on Rails
[Ruby on Rails] Einführung der Anfangsdaten
[Rails] Hinzufügen der Ruby On Rails-Kommentarfunktion
Rails [Für Anfänger] Implementierung der Kommentarfunktion
[Ruby on Rails] Japanische Fehlernotation
[Ruby on Rails] Implementierung einer ähnlichen Funktion
Anfänger haben mit Ruby on Rails ein Portfolio erstellt
Ruby on Rails Elementary
Ruby on Rails Grundlagen
Ruby On Rails Association
Validierungseinstellungen für die Ruby on Rails-Anmeldefunktion
Implementierung der Ruby on Rails-Anmeldefunktion (Sitzung)
[Ruby on Rails] Bis zur Einführung von RSpec
Empfehlung der Serviceklasse in Ruby on Rails
[Ruby on Rails] Select2-Einführungsnotiz für Webpacker
Ruby on Rails ~ Grundlagen von MVC und Router ~
[Ruby on Rails] Ein Memorandum mit Layoutvorlagen
[Rails] Verfahren zum Verknüpfen von Datenbanken mit Ruby On Rails
[Ruby on Rails] Individuelle Anzeige von Fehlermeldungen
[Ruby on Rails] Asynchrone Kommunikation der Posting-Funktion, Ajax
Ruby on Rails Lernrekord -2020.10.03
Portfolioerstellung Ruby on Rails
Implementierung der Ruby on Rails-Anmeldefunktion (Devise Edition)
Ruby on Rails Lernrekord -2020.10.04
[Ruby on Rails] Debuck (bindend.pry)
Ruby on Rails Lernrekord -2020.10.05
Ruby on Rails Lernrekord -2020.10.09
Ruby on Rails lernen Rekord-2020.10.07 ②
(Für Anfänger) [Rails] Installieren Sie das Gerät
Ruby on Rails lernen Rekord-2020.10.07 ①
Brechen Sie die Ruby on Rails-Migration ab
Ruby on Rails Lernrekord -2020.10.06
Zusammenfassung der Ruby on Rails-Validierung
Ruby on Rails Grundlegendes Memorandum
Versuchen Sie es mit dem Ruby on Rails-Abfrageattribut
[Für Anfänger] Erläuterung von Klassen, Instanzen und Statik in Java
[Ruby on Rails] Eliminierung von Fat Controller-First, Logik zum Modell-
(Ruby on Rails6) Anzeige der Datenbank, die die ID der Datenbank erhalten hat
Alle Inhalte der Listenseite löschen [Ruby on Rails]