So erstellen Sie eine Ruby on Rails-Anwendung

Einführung

Rail ist ein Webanwendungsframework, das in Ruby geschrieben wurde. Bei der Anwendungsentwicklung wird ein eigenwilliger Ansatz verfolgt, bei dem vorausgesetzt wird, dass bestimmte Konventionen den Entwicklern dort am besten dienen, wo es ein gemeinsames Ziel gibt. Rails bietet daher Konventionen für den Umgang mit Routing, statusbehafteten Daten, Asset Management und vielem mehr, um die Basisfunktionalität bereitzustellen, die die meisten Webanwendungen benötigen.

Rails folgt dem Architekturmuster model-view-controller (MCV), das die Logik einer Anwendung in Modellen trennt , von der Weiterleitung und Präsentation von Anwendungsinformationen. Diese Organisationsstruktur - zusammen mit anderen Konventionen, mit denen Entwickler Code in helpers und https://api.rubyonrails.org/classes/ActionView/ extrahieren können. PartialRenderer.html [partials] - Stellt sicher, dass der Anwendungscode nicht https://en.wikipedia.org/wiki/Don%27t_repeat_yourself unnötigerweise wiederholt wird.

In diesem Tutorial erstellen Sie eine Rails-Anwendung, mit der Benutzer Informationen zu Haien und deren Verhalten veröffentlichen können. Dies ist ein guter Ausgangspunkt für die zukünftige Anwendungsentwicklung.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

  • Ein lokaler Computer oder Entwicklungsserver, auf dem Ubuntu 18.04 ausgeführt wird. Ihr Entwicklungscomputer sollte einen Nicht-Root-Benutzer mit Administratorrechten und eine mit "+ ufw +" konfigurierte Firewall haben. Anweisungen zum Einrichten finden Sie in unserem Initial Server Setup with Ubuntu 18.04 Tutorial.

  • https://nodejs.org [Node.js] und npm, die auf Ihrem lokalen Computer oder Entwicklungsserver installiert sind. In diesem Tutorial werden die Versionen Node.js und npm verwendet. Anleitungen zum Installieren von Node.js und npm unter Ubuntu 18.04 finden Sie unter https://www.digitalocean.com/community/tutorials/how-to-install-node-js-. on-ubuntu-18-04 # installation-using-a-ppa [Installieren von Node.js unter Ubuntu 18.04].

  • Ruby, rbenv und Rails, die auf Ihrem lokalen Computer oder Entwicklungsserver installiert sind. Befolgen Sie dazu die Schritte 1 bis 4 unter https://www.digitalocean.com/community/tutorials/how- ruby-on-rail-with-rbenv-on-ubuntu-18-04 installieren [Wie installiert man Ruby on Rails mit rbenv unter Ubuntu 18.04]. Dieses Tutorial verwendet Ruby, rbenv und Rails.

Schritt 1 - SQLite3 installieren

Bevor wir unsere Rails-Hai-Anwendung erstellen, müssen wir sicherstellen, dass wir über eine Datenbank zum Speichern von Benutzerdaten verfügen. Rails ist standardmäßig so konfiguriert, dass SQLite verwendet wird. Dies ist in der Entwicklung häufig eine gute Wahl. Da unsere Anwendungsdaten keine hohe programmatische Erweiterbarkeit erfordern, wird SQLite unseren Anforderungen gerecht.

Aktualisieren Sie zunächst Ihren Paketindex:

sudo apt update

Installieren Sie als nächstes die Pakete + sqlite 3 und` + libsqlite3-dev`:

sudo apt install sqlite3 libsqlite3-dev

Dadurch werden sowohl SQLite als auch die erforderlichen Entwicklungsdateien installiert.

Überprüfen Sie Ihre Version, um sicherzustellen, dass die Installation erfolgreich war:

sqlite3 --version
Output 2018-01-22 18:45:57

Wenn SQLite installiert ist, können Sie mit der Entwicklung Ihrer Anwendung beginnen.

Schritt 2 - Erstellen eines neuen Rails-Projekts

Wenn unsere Datenbank installiert ist, können wir ein neues Rails-Projekt erstellen und uns einige der Standardkodes ansehen, die Rails uns mit dem folgenden Befehl zur Verfügung stellt: `+rails new + ` Befehl.

Erstellen Sie ein Projekt mit dem Namen "++" mit dem folgenden Befehl:

rails new

Sie werden eine Menge Ergebnisse sehen, die Ihnen sagen, was Rails für Ihr neues Projekt erstellt. Die folgende Ausgabe hebt einige wichtige Dateien, Verzeichnisse und Befehle hervor:

Output     create
    . . .
    create  Gemfile
    . . .
     create  app
     . . .
     create  app/controllers/application_controller.rb
     . . .
     create  app/models/application_record.rb
     . . .
     create  app/views/layouts/application.html.erb
     . . .
     create  config
     create  config/routes.rb
     create  config/application.rb
     . . .
     create  config/environments
     create  config/environments/development.rb
     create  config/environments/production.rb
     create  config/environments/test.rb
     . . .
     create  config/database.yml
     create  db
     create  db/seeds.rb
     . . .
        run  bundle install
     . . .
Bundle complete! 18 Gemfile dependencies, 78 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
     . . .
* bin/rake: Spring inserted
* bin/rails: Spring inserted

Die hier hervorgehobene Ausgabe gibt an, dass Rails Folgendes erstellt hat:

  • + Gemfile +: Diese Datei listet die Gem-Abhängigkeiten für Ihre Anwendung auf. Ein gem ist ein Ruby-Softwarepaket. Mit einem Gemfile können Sie die Softwareanforderungen Ihres Projekts verwalten.

  • + app +: Im Verzeichnis + app + befindet sich Ihr Hauptanwendungscode. Dies umfasst die Modelle, Controller, Ansichten, Assets, Helfer und Mailer, aus denen die Anwendung selbst besteht. Rails bietet Ihnen einige Informationen auf Anwendungsebene, mit denen das MCV-Modell in Dateien wie "+ app / models / application_record.rb ", " app / controller / application_controller.rb " und " app / views / layouts / application" gestartet werden kann .html.erb + `.

  • + config +: Dieses Verzeichnis enthält die Konfigurationseinstellungen Ihrer Anwendung:

  • + config / routes.rb +: Die Routendeklarationen Ihrer Anwendung befinden sich in dieser Datei.

  • + config / application.rb +: In dieser Datei befinden sich allgemeine Einstellungen für Ihre Anwendungskomponenten.

  • + config / surroundings +: In diesem Verzeichnis befinden sich die Konfigurationseinstellungen für Ihre Umgebungen. Rails umfasst standardmäßig drei Umgebungen: "+ Entwicklung", "+ Produktion" und "+ Test".

  • + config / database.yml +: Die Datenbankkonfigurationseinstellungen befinden sich in dieser Datei, die in vier Abschnitte unterteilt ist: + default +, + development +, + production + und + test +. Dank der Gem-Datei, die mit dem Befehl + rails new + geliefert wurde, der den Edelstein + sqlite3 + enthielt, ist in unserer Datei + config / database.yml + der Parameter + adapter + bereits auf + sqlite3 + gesetzt, wobei dies spezifiziert wird dass wir mit dieser Anwendung eine SQLite-Datenbank verwenden.

  • + db +: Dieser Ordner enthält ein Verzeichnis für die Datenbank migrations mit dem Namen + migrate + sowie die Dateien + schema.rb + und + seeds.rb + Dateien. + schema.db + enthält Informationen zu Ihrer Datenbank, während + seeds.rb + die Ausgangsdaten für die Datenbank enthält.

Schließlich führt Rails den Befehl +bundle install + ` aus, um die in Ihrer