Ruby on Rails-Tutorial für Anfänger mit Projekt und Beispiel
Was ist Rubin?
Ruby ist eine hochrangige, interpretierte und objektorientierte Programmiersprache. Es ist eine dynamische Open-Source-Sprache mit einer großartigen Community. Ruby wurde für Einfachheit und Produktivität entwickelt. Es fördert das Schreiben von Softwarecode, der zuerst vom Menschen und dann vom Computer erstellt wird. Es wurde 1995 von Yukihiro Matsumoto in Japan entwickelt.
Was ist Rails?
Schienen ist ein in Ruby geschriebenes Entwicklungsframework zum Erstellen von Webanwendungen. Es wurde als Grundlage für die Anwendung Basecamp erstellt und 2004 als Open-Source-Software veröffentlicht. Rails bietet viele integrierte Standardfunktionen und -funktionen, was es zu einer geeigneten Option für MVP-Prototyping und -Entwicklung macht.
Es wurde von David Heinemeier Hasson entwickelt, der im Volksmund als DHH bekannt ist. Es ist eines der einflussreichsten und beliebtesten Tools zum Erstellen von Webanwendungen. Es wird von einigen der beliebtesten Websites wie Airbnb verwendet. Github, Shopify usw.
Warum Schienen?
Hier sind die Vorteile/Vorteile der Verwendung von Rails:
- Rails ist als Ruby-Gem verpackt und Sie können damit eine Vielzahl von Anwendungen erstellen.
- Sie können damit normale Webanwendungen, E-Commerce-Anwendungen, Content-Management-Systeme und mehr erstellen.
- Rails ist ein Full-Stack-Framework, das alles enthält, was Sie zum Erstellen einer datenbankgesteuerten Webanwendung unter Verwendung des Model-View-Controller-Musters benötigen.
- Das bedeutet, dass alle Ebenen so aufgebaut sind, dass sie mit weniger Code nahtlos zusammenarbeiten. Es erfordert weniger Codezeilen als andere Frameworks.
So laden Sie Ruby herunter und installieren es Windows
Der Installationsvorgang hängt von Ihrem Betriebssystem ab. Sie werden Ruby auf Ihrem Computer installieren. Windows, Mac und Linux.
Schritt 1) Laden Sie Rubyinstaller herunter
Der einfachste Weg, Ruby auf Ihrem zu installieren Windows Die Installation Ihres Computers erfolgt über den Ruby Installer, den Sie hier herunterladen können https://rubyinstaller.org/.
Sie müssen lediglich das heruntergeladene Installationsprogramm ausführen.
Schritt 2) Klicken Sie auf das heruntergeladene Installationsprogramm
Double-Klicken Sie auf das heruntergeladene Installationsprogramm „rubyinstaller-2.4.1-2-x64.exe“.
Schritt 3) Akzeptieren Sie die Lizenz
Wählen Sie das Optionsfeld „Ich akzeptiere die Lizenz“ und klicken Sie auf die Schaltfläche „Weiter“. Dies sollte Sie zur nächsten Abbildung unten bringen:
Schritt 4) Aktivieren Sie die ersten beiden Kontrollkästchen
Aktivieren Sie die ersten beiden Kontrollkästchen, um das Ausführen von Ruby-Skripten zu vereinfachen.
Klicken Sie auf die Schaltfläche „Installieren“, um die Installation zu starten. Sobald die Installation abgeschlossen ist, sollten Sie die Abbildung unten sehen.
Schritt 5) Klicken Sie auf Fertig stellen
Deaktivieren Sie nicht das Kontrollkästchen zur Installation von MSYS2. Klicken Sie auf „Fertig stellen“, um die Installation abzuschließen. Daraufhin wird ein Eingabeaufforderungsfenster angezeigt, das in der Abbildung unten dargestellt ist.
Schritt 6) Installiert MSYS2
Dieser Schritt installiert MSYS2, eine Erstellungsplattform, die über einen Paketmanager für die einfache Installation von Paketen verfügt Windows.
Drücken Sie die Eingabetaste, um alle Komponenten zu installieren, da sie alle für eine reibungslose Ruby on Rails-Entwicklungsumgebung zum Arbeiten erforderlich sind Windows.
Schienen installieren
Sie sollten Ruby aus dem vorherigen Abschnitt installiert haben, und jetzt werden Sie Rails installieren. Sie können Rails mit einem Paket von installieren RailsInstaller, aber das Problem dabei ist, dass Sie nicht die neueste Version der erforderlichen Pakete erhalten.
Wenn Sie bereits die neueste Version von Ruby und einen Basissatz der erforderlichen RubyGems und Erweiterungen installiert haben, müssen Sie jetzt nur noch den folgenden Befehl in der Eingabeaufforderung ausführen, um Rails auf Ihr System zu bekommen: „gem install rails“.
Sie müssen auch installieren Node.js wenn Sie es noch nicht haben, da einige Bibliotheken, von denen Rails abhängt, ein Javascript Laufzeit, damit sie richtig funktioniert. Sie können den Knoten unter https://nodejs.org.
Es handelt sich um einen häufigeren und bevorzugten Ansatz zur Weiterentwicklung WindowsDie Rails-Community verwendet eine Windows Subsystem für Linux, das eine GNU/Linux-Umgebung mit Befehlszeilentools, Dienstprogrammen und allgemeinen Anwendungen direkt bereitstellt Windows.
Ruby auf dem Mac installieren
Auf Ihrem Mac ist Ruby bereits vorinstalliert. Da die vorinstallierte Version jedoch möglicherweise veraltet ist, müssen Sie eine neue/neueste Version installieren.
Am einfachsten geht das mit einem Paketmanager wie z.B Homebrew. Möglicherweise müssen Sie Homebrew zuerst installieren, indem Sie den folgenden Befehl am Terminal ausführen.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)
Daraufhin wird eine Warnung angezeigt und Sie werden aufgefordert, Ihr Passwort einzugeben. Geben Sie Ihr Mac-Passwort ein (die Zeichen werden während der Eingabe nicht angezeigt). Drücken Sie einfach die Eingabetaste, wenn Sie mit der Eingabe Ihres Passworts fertig sind. Führen Sie dann diesen einfachen Homebrew-Befehl aus, um Ruby auf Ihrem Mac zu installieren.
brew install ruby
Und führen Sie auch diesen Befehl aus:
echo "export PATH="/usr/local/bin:/usr/local/sbin:$PATH >> ~/.bash_profile
Um diese Ruby-Installation als Standard-Ruby festzulegen, die auf Ihrem System ausgeführt werden soll, und nicht als vorinstalliertes Ruby.
Um zu bestätigen, dass die Installation erfolgreich war, können Sie Folgendes im Terminal ausführen
ruby --version
Dadurch wird die von Ihnen installierte Ruby-Versionsnummer gedruckt. Die Ausgabe sieht in etwa so aus
ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]
Ruby installieren auf Ubuntu (Linux)
Der einfachste Weg, Ruby auf Ihrem Computer zu installieren Ubuntu System ist über den apt-Paketmanager. Sie müssen die folgenden Befehle im Terminal ausführen, um das neueste Ruby von zu installieren Ubuntu Repositories.
- Sudo apt-Update – Dadurch wird die Standardeinstellung aktualisiert Ubuntu Repositories
- sudo apt install ruby-full – Es wird das neueste Ruby herunterladen und installieren
Um zu bestätigen, dass die Installation erfolgreich war, können Sie Folgendes ausführen 'Rubin-Version,' Dadurch wird die von Ihnen installierte Ruby-Version gedruckt.
Schienen anbringen Ubuntu (Linux)
Sie sollten die folgenden Schritte ausführen, um Rails erfolgreich auf Ihrem Linux-Computer zu installieren.
Schritt 1) Aktualisieren Sie den Gem-Manager Ihres Computers, indem Sie ihn ausführen 'gem update –system' am Terminal oder an der Eingabeaufforderung.
Schritt 2) Führen Sie 'gem install schienen' um die neueste Version von Rails auf Ihrem Computer zu installieren.
Schritt 3) Sie sollten Bundler Gem installieren, um die Gem-Abhängigkeitsverwaltung der Rails-Anwendung zu vereinfachen. Laufen 'gem install bundler' es bekommen.
Zwei Prinzipien von Rails
Rails folgen grundlegenden Software-Designprinzipien und ermutigen Sie, diese Prinzipien auch anzuwenden.
Die beiden häufigsten sind:
- Wiederholen Sie sich nicht (DRY) – so schreiben Sie prägnanten, konsistenten und wartbaren Code.
- Konvention vor Konfiguration – Rails ist vorkonfiguriert, um sinnvolle Standardeinstellungen zu verwenden, die für die gängigsten Anwendungen geeignet sind. Dadurch wird Ihre Anwendungsentwicklung schneller und Sie müssen weniger Code pflegen.
Rails – Projektdateistrukturen
Nachdem Rails nun auf Ihrem System installiert ist, können wir eine Rails-Anwendung erstellen! In diesem Ruby on Rails-Tutorial lernen wir Beispiele für Ruby on Rails und erfahren, wie man eine To-do-Listen-Anwendung erstellt. Führen Sie den folgenden Befehl aus 'rails new todo_app' in Ihrem Terminal, um die Anwendung zu erstellen.
Dieser Befehl erstellt ein Verzeichnis mit dem Namen 'todo_app' im aktuellen Verzeichnis mit der grundlegenden Ordnerstruktur einer Rails-Webanwendung, wie in der folgenden Abbildung dargestellt:
Sie werden die Hauptverzeichnisse in diesem Ruby on Rails-Beispiel durchgehen.
App – Dieses Verzeichnis gruppiert mithilfe verschiedener Unterverzeichnisse für die Benutzeroberfläche/das Layout (Ansichten und Hilfsprogramme), den Controller (Controller-Dateien) und die Modelle (Geschäfts-/Anwendungslogik).
App/Controller – In diesem Verzeichnis werden Controller-Dateien gespeichert, die Rails zur Bearbeitung von Anfragen des Clients verwendet.
App/Assets – Es enthält statische Dateien, die für das Frontend der Anwendung erforderlich sind und je nach Typ in Ordner gruppiert werden – JavaSkript Dateien, Bilder und Stylesheets.
App/Helfer – Dieses Unterverzeichnis enthält Hilfsfunktionen, die Ihr Anwendungsmodell, Ihre Ansicht und Ihre Controller-Logik fokussiert, klein und übersichtlich machen.
App/Modelle – Dies enthält Dateien
die die Datenbank Ihrer Anwendung modellieren. Die Modellklassen machen die Arbeit mit der Datenbank sehr einfach.
App/Ansichten – Diese enthalten Vorlagen-/Layoutdateien, mit denen der Benutzer Ihrer Anwendung interagiert. Die Vorlagen sind eine Kombination aus HTML und Daten aus der Datenbank.
Behälter - Es enthält Rails-Skripte, die Ihre Anwendung starten. Es kann auch andere Skripte enthalten, die Sie zum Einrichten und Aktualisieren der Anwendung verwenden.
Konfiguration – Dies enthält Konfigurationsdateien – Datenbank.yml, Umgebung.rb, Routen.rbusw., die Ihre Anwendung ausführen muss.
DB – Dieses Verzeichnis enthält Dateien/Skripte, die zur Verwaltung Ihrer Anwendungsdatenbank verwendet werden.
lib – Dieses Verzeichnis enthält ein erweitertes Modul für Ihre Anwendung.
Protokoll - Dies enthält Protokolldateien – server.log, development.log, test.log und Production.logusw., die zum Debuggen oder Überwachen Ihrer Anwendung verwendet werden.
Publikum - Dieses Verzeichnis enthält statische Dateien und kompilierte Assets, wie z. B. HTML-Dateien, Javascript Dateien, Bilder und Stylesheets.
Prüfung - Dieses Verzeichnis enthält Testdateien, die Sie schreiben, um die Funktionalität Ihrer Anwendung zu testen.
tmp – Dieses Verzeichnis enthält temporäre Dateien wie Cache- und PID-Dateien.
Verkäufer - Dieses Verzeichnis enthält Bibliotheken von Drittanbietern.
Gemfile – Diese Datei gibt an, welche grundlegenden Gem-Anforderungen Sie zum Ausführen Ihrer Webanwendung benötigen. Sie können die Gems in Entwicklung, Test oder Produktion gruppieren und Rails weiß, wann jedes Gem eingebunden werden muss.
Gemfile.lock – Im Gegensatz zur Gemfile, die explizit die Gems auflistet, die Sie in Ihrer Anwendung haben möchten, enthält Gemfile.lock zusätzlich andere Gems, von denen die in der Gemfile aufgelisteten Gems abhängig sind und die dann automatisch installiert werden, um die Abhängigkeiten zu erfüllen.
Readme.md – Sie verwenden diese Datei, um wichtige Details zu Ihrer Anwendung mitzuteilen, z. B. was die App tut, wie die Anwendung installiert und ausgeführt wird.
Rakefile – Diese Datei enthält verschiedene Rake-Aufgabendefinitionen, die bei der Automatisierung alltäglicher Verwaltungsaufgaben Ihrer Anwendung helfen.
config.ru – Dies ist eine Rack-Konfigurationsdatei, die eine Schnittstelle zum Webserver zum Starten Ihrer Anwendung bereitstellt.
Wechseln Sie in das Verzeichnis 'todo_app' Verzeichnis Rails generiert und ausgeführt 'Rails-Server' um die Anwendung zu starten. Typ localhost: 3000 Wenn alles gut gelaufen ist, sollten Sie in der Adressleiste Ihres Webbrowsers die folgende Abbildung sehen.
Dies ist die Standard-Homepage Ihrer Anwendung. Sie werden diese im späteren Abschnitt dieses Ruby on Rails-Tutorials ändern. Sie können den Server stoppen, indem Sie 'Strg-C'.
Rails – Befehle generieren
Der Rails-Befehl „generate“ verwendet Vorlagen, um eine ganze Reihe nützlicher Dinge in Ihrer Anwendung zu erstellen. Mit diesen Generatoren können Sie viel Zeit sparen.
Es hilft, indem es Boilerplate-Code schreibt, Code, der für das Funktionieren Ihrer Webanwendung erforderlich ist. Du kannst rennen 'Schienen generieren' allein in der Eingabeaufforderung oder im Terminal, um eine Liste der verfügbaren Generatoren anzuzeigen, wie unten dargestellt:
Sie können auch laufen 'Schienen generieren „Befehl“‘ um eine Beschreibung der Funktion des Befehls anzuzeigen. Es bietet praktische Optionen, die mit dem Befehl und dem Anwendungsbeispiel ausgeführt werden können. Die folgende Abbildung zeigt die Ausgabe des Ausführens„Schienen generieren Controller“:
Sie verwenden den Befehl „Rails Generate Scaffold“, um automatisch das Modell, die Ansicht und den Controller für die Aufgabenlistenanwendung zu erstellen, die Sie erstellen. Laufen„Rails generieren Gerüst todo_list Titel:String Beschreibung: Text“ in Ihrem Terminal (überprüfen Sie, ob Sie sich noch im todo_app-Verzeichnis befinden).
Dadurch wird eine vollständige CRUD-Weboberfläche (Erstellen, Lesen, Aktualisieren und Löschen) für die TodoLists-Tabelle erstellt.
Ein weiterer nützlicher Befehl ist „Schienen zerstören“, es kehrt alles um „Schienen erzeugen…“ tut.
Schienen – Streckenführung
Das Rails-Routing-System, der Rails-Router, verarbeitet alle eingehenden Anfragen an Ihre Webanwendung. Dazu untersucht es die URL der eingehenden Anfragen und ordnet dann jede Anfrage der Controller-Aktion zu, die für deren Verarbeitung verantwortlich ist. Dabei wird eine spezielle Syntax verwendet, die in der Routendatei angegeben ist (config / route.rb).
Die Routendatei hilft bei der Steuerung aller URL-Aspekte Ihrer Webanwendung. Rails verwendet standardmäßig ein RESTful-Design basierend auf dem REST-Architekturstil, das eine Zuordnung zwischen HTTP-Verben und -Anfragen (URLs) zu Controller-Aktionen bereitstellt.
Die Routendatei wurde bei der Ausführung generiert 'Schienen neu' in einem früheren Abschnitt dieses Tutorials. Fahren Sie mit der Todo-Anwendung fort, die Sie erstellen, und führen Sie Folgendes aus'Rails db:migrate' (Sie werden in Kürze erfahren, was das bewirkt)
Stellen Sie in Ihrer Befehlszeile sicher, dass Sie sich immer noch im Stammverzeichnis der Anwendung befinden (dem todo_app-Verzeichnis).
Anschließend starten Sie den Server erneut mit 'Rails-Server'. Art http://localhost:3000/todo_lists/
in Ihrem Browser ein und drücken Sie die Eingabetaste. Sie sollten eine Webseite zurückerhalten, wie in der folgenden Abbildung des Ruby on Rails-Beispiels gezeigt:
Dies ist die Todo-Listenansicht, die vom Scaffold-Befehl generiert wurde und durch die Indexaktion des TodoListsControllers gesteuert wird.
Fahren Sie fort und fügen Sie eine Aufgabenliste hinzu, indem Sie auf der Seite auf „Neue Aufgabenliste“ klicken. Sie sollten die Seite wie unten gezeigt sehen:
Beachten Sie, dass die URL geändert wurde http://localhost:3000/todo_lists/new
. Dies ist die Seite zum Erstellen einer neuen Aufgabenliste. Sie wird durch die neue Methode/Aktion des TodoListsControllers gesteuert.
Geben Sie den Titel und die Beschreibung Ihrer Aufgabenliste in das Formular ein und klicken Sie auf die Schaltfläche „Aufgabenliste erstellen“. Die URL sollte sich in ändern http://localhost:3000/todo_lists/1
, dargestellt in der folgenden Abbildung eines Ruby on Rails-Codebeispiels:
Dies ist die Anzeigeseite einer Aufgabenliste und wird durch die Anzeigemethode/-aktion des TodoListsControllers gesteuert. Wenn Sie zurückgehen http://localhost:3000/todo_lists/
, Sie sollten nun die folgende Abbildung mit einer neuen hinzugefügten Aufgabenliste sehen:
Rails konnte die verschiedenen Anfragen (URLs) mithilfe der Routendefinition in config/routes.rb der entsprechenden TodoListsController-Aktion zuordnen.
Wenn Sie einen Blick auf diese Datei werfen, sehen Sie eine einzelne Zeile 'Ressourcen: todo_lists'ist die Standardmethode von Rails zum Schreiben erholsamer Routen. Diese einzelne Zeile erstellt sieben Routen, die alle dem TodoLists-Controller zugeordnet sind.
Per Konvention wird die Aktion jedes Controllers auch einer bestimmten CRUD-Operation (Erstellen, Lesen, Aktualisieren und Löschen) in der Datenbank zugeordnet.
Du kannst rennen 'Rake-Routen' in Ihrer Befehlszeile, um die verschiedenen in Ihrer Anwendung verfügbaren Routen anzuzeigen. Die folgende Abbildung zeigt die Ausgabe des Ausführens „Schienenstrecken“ in Ihrer Befehlszeile/Terminal.
Schienen – Ansichten
Die View-Ebene ist eine der Komponenten des MVC-Paradigmas und für die Generierung einer HTML-Antwort für jede Anfrage an Ihre Anwendung verantwortlich. Rails verwendet standardmäßig ERB (Embedded Ruby), ein leistungsstarkes Template-System für Ruby.
ERB macht das Schreiben von Vorlagen einfach und wartbar, indem es Klartext mit Ruby-Code zur Variablenersetzung und Flusskontrolle kombiniert. Eine ERB-Vorlage hat die Erweiterung .html, .erb oder .erb.
Sie werden meist nur eine Kombination aus zwei Tag-Markern verwenden, die jeweils dafür sorgen, dass der eingebettete Code auf eine bestimmte Art und Weise verarbeitet und gehandhabt wird.
Ein Tag mit einem Gleichheitszeichen '<%= %>' gibt an, dass eingebetteter Code ein Ausdruck ist und dass das Ergebnis des Codes vom Renderer beim Rendern der Vorlage ersetzt werden soll.
Das andere Tag ohne Gleichheitszeichen '<% %>' Gibt dem Renderer an, dass das Ergebnis des Codes beim Rendern der Vorlage nicht ersetzt/gedruckt werden soll.
Jeder Controller in Ihrer Rails-Anwendung verfügt über ein entsprechendes Unterverzeichnis in App/Ansichten, und jede Aktion/Methode in einem Controller verfügt über eine entsprechende .html- und .erb-Datei in diesem Verzeichnis.
Sehen Sie sich die App/Ansichten der Aufgaben-App an, die Sie erstellen. Sie finden ein Unterverzeichnis mit dem Namen 'todo_lists' in diesem Unterverzeichnis .html.erb Dateien mit Namen, die den Aktionen/Methoden in der entsprechen TodoListen Regler.
Schienen – ActiveRecord, Active Record Pattern und ORM
ActiveRecord ist die Ruby-Implementierung des Active Record-Musters, einem einfachen Muster, bei dem eine Klasse eine Tabelle und eine Instanz der Klasse eine Zeile in dieser Klasse darstellt.
ActiveRecord wird im Volksmund als ORM (Object Relational Mapping) bezeichnet, eine Technik, die es Ihnen ermöglicht, Ihre Datenbank in einer Sprache zu verwalten, mit der Sie am besten vertraut sind. Es ist datenbankunabhängig, sodass Sie problemlos zwischen Datenbanken wechseln können (z. B SQLite, MySQL, PostgreSQL, SQL Server, Oracle, usw.). Diese Suite ist mit dem gleichen Code/der gleichen Logik besser auf Ihre Anwendungsanforderungen zugeschnitten.
Wenn Sie also ein Array erhalten möchten, das eine Liste aller ToDo-Listen in Ihrer Anwendung enthält, schreiben Sie nicht Code, um eine Verbindung zur Datenbank herzustellen, sondern führen Sie eine Art SQL-SELECT-Abfrage durch und konvertieren Sie diese Ergebnisse in eine Array.
Dazu müssen Sie nur „TodoList.all“ eingeben. und Active Record gibt Ihnen das mit TodoList-Objekten gefüllte Array, mit dem Sie nach Belieben spielen können.
Sie müssen lediglich die richtige Konfiguration einrichten config/database.yml, und Active Record ermittelt alle Unterschiede zwischen den verschiedenen Datenbanksystemen. Wenn Sie also von einem zum anderen wechseln, müssen Sie nicht darüber nachdenken.
Sie konzentrieren sich auf das Schreiben des Codes für Ihre Anwendung, und Active Record kümmert sich um die grundlegenden Details Ihrer Verbindung mit Ihrer Datenbank. Active Record verwendet Namenskonventionen, um die Zuordnung zwischen Modellen und Datenbanktabellen zu erstellen.
Rails pluralisiert Ihre Modellklassennamen, um die entsprechende Datenbanktabelle zu finden. Für eine Klasse TodoList erstellt ActiveRecord also eine Datenbanktabelle namens TodoLists.
Schienen – Migrationen
Bei der Rails-Migration handelt es sich lediglich um ein Skript, mit dem Sie Ihre Anwendungsdatenbank bearbeiten. Es wird zum Einrichten oder Ändern Ihrer Datenbank verwendet und macht das manuelle Schreiben von SQL-Code zu diesem Zweck überflüssig.
Es verwendet Ruby, um Änderungen am Datenbankschema zu definieren und ermöglicht die Verwendung der Versionskontrolle, um Ihre Datenbank synchron zu halten.
Rails-Migrationen verwenden eine Ruby Domain Specific Language (DSL). Dies fungiert als Abstraktion und ermöglicht es, Ihre Datenbank-Engine entsprechend Ihren Anforderungen zu verwenden oder zu ändern.
Sie können mit jedem geteilt werden, der an der Anwendung arbeitet, und können auch zurückgesetzt werden, um etwaige Änderungen an der Datenbank rückgängig zu machen. Dies ist ein Mechanismus mit hoher Sicherheit, da Sie sich keine Sorgen machen müssen, dass Ihre Datenbank dauerhaft beschädigt wird.
Rails – ActiveRecord-Zuordnungen
Eine Verbindung zwischen zwei ActiveRecord-Modellen wird als Assoziation bezeichnet. Assoziationen erleichtern die Durchführung von Operationen an den verschiedenen Datensätzen in Ihrem Code erheblich. Sie können in vier Kategorien unterteilt werden: –
One to One: – Dies zeigt an, dass ein Datensatz genau eine Instanz eines anderen Modells enthält. Ein gutes Beispiel ist das Benutzerprofil. Ein Benutzer hat nur ein Profil. Es benutzt hat _einen Stichwort.
Eins zu viele: – Dies ist die häufigste Assoziation und zeigt an, dass ein Modell null oder mehr Instanzen eines anderen Modells hat. Ihr Nutzen hat ein _many Schlüsselwort zur Bezeichnung dieser Assoziation.
Viel zu viel: – Diese Zuordnung ist etwas komplizierter und ActiveRecord bietet zwei Möglichkeiten, damit umzugehen. Verwendung der hat_und_gehört_vielen und hat viele, Dadurch erhalten Sie Zugriff auf die Beziehung, die in einer separaten Tabelle definiert ist.
Polymorphes Eins-zu-Viele:- Dies ist eine erweiterte Assoziation, die Ihnen in Rails zur Verfügung steht. Sie können damit ein Modell definieren, das zu vielen verschiedenen Modellen in einer einzigen Zuordnung gehören kann.
Rails – ActiveRecord-Validierungen
Die Validierung trägt dazu bei, sicherzustellen, dass Sie über korrekte Daten verfügen, denn die Arbeit mit falschen Daten ist eine schreckliche Sache und kann Sie Geld und Ihr Geschäft kosten.
Die Validierung bietet außerdem eine zusätzliche Sicherheitsebene für Ihre Anwendung, damit böswillige Benutzer keinen Zugriff auf Informationen in Ihrer Datenbank erhalten. Rails bietet Ihnen eine nette API von Validierungshilfsmitteln in ActiveRecord, um Ihre Datenbank sauber, sicher und fehlerfrei zu halten.
ActiveRecord-Validierungen werden für Modellobjekte ausgeführt, bevor sie in der Datenbank gespeichert werden. Dies macht sie zuverlässiger und bietet auch die beste Vorgehensweise beim Erstellen Ihrer Anwendung.
Die folgenden ActiveRecord-Methoden rufen Validierungen hervor, wenn sie für Modellobjekte verwendet oder aufgerufen werden – erstellen, erstellen!, speichern, speichern!, aktualisieren und aktualisieren!. Die mit dem Knall (erstellen!, speichern! und aktualisieren!) lösen eine Ausnahme aus, wenn ein Datensatz ungültig ist, während dies nicht der Fall ist.
Die gängigsten ActiveRecord-Validierungshilfen, die Ihnen zur Verfügung stehen, sind:
Bestätigung: – Dieser Validierungshelfer ist nützlich, um zu überprüfen, ob zwei Felder denselben Eintrag haben. B. Passwort und Passwortbestätigung, wird es in Verbindung mit dem Anwesenheitsvalidierungs-Helfer verwendet.
Gegenwart:– Dadurch wird überprüft, ob das Feld nicht leer ist.
Einzigartigkeit: sorgt für einen eindeutigen Wert für ein Feld, z. B. Benutzername
Länge:- Um eine Begrenzung der Zeichenlänge eines Feldes zu erzwingen
Sie können Ihre benutzerdefinierte Validierung auch erstellen, indem Sie die Methode „validate“ verwenden und ihr den Namen der benutzerdefinierten Validierungsmethode übergeben.
Sie können die Modelle überprüfen Fehler Objekt, um herauszufinden, warum eine Validierung. Hoffentlich haben Sie einige Ideen, wie Sie Ihre Anwendung stärker einschränken und sicherer gestalten können, um nur sichere Daten in Ihre Datenbank zuzulassen.
Rails – ActionController
Der Rails-Controller ist das Zentrum Ihrer Webanwendung. Es erleichtert und koordiniert die Kommunikation zwischen dem Benutzer, den Modellen und den Ansichten.
Ihre Controller-Klassen erben vom ApplicationController, der Code enthält, der in allen anderen Controllern ausgeführt werden kann, und er erbt von der ActionController-Klasse.
Der Controller stellt Ihrer Anwendung Folgendes zur Verfügung:
- Es leitet externe Anfragen an interne Aktionen weiter
- Es verwaltet den Cache und steigert so die Leistung Ihrer Anwendung
- Es verwaltet Hilfsmethoden, die die Funktionen von Ansichtsvorlagen erweitern. Es verwaltet auch Benutzersitzungen und sorgt so für eine reibungslose Nutzung Ihrer App.
Schienen – Konfigurationen
Sie können die verschiedenen Komponenten wie Initialisierer, Assets, Generatoren, Middleware usw. konfigurieren, indem Sie die Initialisierer und Konfigurationsdateien Ihrer Rails-Anwendung im Konfigurationsverzeichnis verwenden. Dateien wie config/application.rb, config/environments/development.rb und config/environments/test.rb usw. Sie können auch benutzerdefinierte Einstellungen für Ihre Anwendung konfigurieren.
Rails – Debuggen
Während Sie Ihre Anwendung erstellen, wird es irgendwann an der Zeit sein, Ihren Code zu debuggen. Rails machen dies mit dem byebug-Juwel einfach. Sie können eine Debugging-Sitzung starten, indem Sie das Schlüsselwort „byebeg“ an einer beliebigen Stelle in Ihrem Anwendungscode einfügen.
Dadurch wird die Ausführung an diesem Punkt vorübergehend gestoppt. Das byebug-Gem stellt Ihnen mehrere Befehle zur Verfügung. Die nützlichsten sind:
- weiter: Befehl, der es Ihnen ermöglicht, zur nächsten Codezeile zu wechseln und alle Methoden zu überspringen, die durch die Ausführung der aktuellen Zeile aufgerufen werden.
- Step: Dies ähnelt dem Befehl „next“, führt Sie jedoch dazu, dass Sie in jeden aufgerufenen Befehl einsteigen.
- brechen: Dies stoppt die Codeausführung.
- fortsetzen setzt die Ausführung des Codes fort.
Es gibt andere Debugging-Gems wie „pry“, die alle ähnliche Funktionalitäten, aber eine leicht unterschiedliche Syntax bieten. Debugging-Gems sollten nicht in der Produktion verwendet werden, da dies Risiken für Ihre Anwendung und negative Erfahrungen für Ihre Anwendungsbenutzer mit sich bringt.
Es gibt Protokolldateien, die Sie auf Fehler in der Produktion untersuchen und beheben können. Außerdem sollten Sie bei der Entwicklung Ihrer Anwendung einen TDD-Ansatz (testgetriebene Entwicklung) verfolgen, um sicherzustellen, dass alles ordnungsgemäß funktioniert, bevor Sie sie in der Produktion bereitstellen.
Zusammenfassung
- Ruby ist eine rein objektorientierte Programmiersprache
- Ruby verfügt über eine elegante Syntax, die sowohl leicht zu lesen als auch zu schreiben ist.
- Rails ist ein in Ruby geschriebenes Entwicklungsframework zum Erstellen von Webanwendungen
- Der Installationsvorgang hängt von Ihrem Betriebssystem ab.
- Rails ist als Ruby-Gem verpackt und Sie können damit eine Vielzahl von Anwendungen erstellen.
- In diesem Tutorial erstellen Sie eine Todo-Listenanwendung. Führen Sie in Ihrem Terminal Folgendes aus: „incomm'n'n' 'rails netoda'p'p'p'“, um die Anwendung zu erstellen.
- Der Rails-Befehl „generate“ verwendet Vorlagen, um eine ganze Reihe nützlicher Dinge in Ihrer Anwendung zu erstellen.
- Mit dem Rails-Routingsystem Rails Router können Sie alle eingehenden Anfragen an Ihre Webanwendung verarbeiten.
- Die View-Ebene ist eine der Komponenten des MVC-Paradigmas und für die Generierung einer HTML-Antwort für jede Anfrage an Ihre Anwendung verantwortlich.
- ActiveRecord ist die Ruby-Implementierung des Active Record-Musters.
- Bei der Rails-Migration handelt es sich lediglich um ein Skript, mit dem Sie Ihre Anwendungsdatenbank bearbeiten.
- Eine Verbindung zwischen zwei ActiveRecord-Modellen wird als Assoziation bezeichnet.
- Die Validierung trägt dazu bei, sicherzustellen, dass Sie über korrekte Daten verfügen, denn die Arbeit mit falschen Daten ist eine schreckliche Sache und kann Sie Geld und Ihr Geschäft kosten.
- Der Rails-Controller hilft Ihnen, die Kommunikation zwischen dem Benutzer, den Modellen und den Ansichten zu erleichtern und zu koordinieren.
- Rail hilft Ihnen bei der Konfiguration der verschiedenen Komponenten wie Initialisierer, Assets, Generatoren, Middlewares usw.