Ruby on Rails-Tutorial
⚡ Intelligente Zusammenfassung
Das Ruby on Rails-Tutorial stellt das Open-Source-Webframework vor, das in Ruby geschrieben ist und Plattformen wie Airbnb, GitHub und Shopify antreibt. Die Anleitung behandelt die Installation auf Windows, Mac und Linux, Rails-Generatoren, Routing, Views, ActiveRecord, Validierungen und Debugging.

Was ist Rubin?
Ruby Ruby ist eine interpretierte, objektorientierte Programmiersprache höherer Ebene. Sie ist eine dynamische Open-Source-Sprache mit einer großen Community. Ruby wurde mit Blick auf Einfachheit und Produktivität entwickelt. Sie fördert die Entwicklung von Softwarecode, der primär für den Menschen und erst sekundär für den Computer konzipiert ist. Yukihiro Matsumoto entwickelte Ruby 1995 in Japan.
Was ist Rails?
Schienen Rails ist ein in Ruby geschriebenes Entwicklungsframework zur Erstellung von Webanwendungen. Es entstand als Grundlage für die Basecamp-Anwendung und wurde 2004 als Open-Source-Software veröffentlicht. Rails bietet viele integrierte Standardfunktionen und eignet sich daher gut für MVP-Prototypen.ping und schnelle Produktentwicklung.
Rails wurde von David Heinemeier Hansson, besser bekannt als DHH, entwickelt. Es ist eines der einflussreichsten und beliebtesten Tools zur Entwicklung von Webanwendungen und wird von großen Websites wie Airbnb, GitHub und Shopify eingesetzt.
Warum Schienen?
Vor der Installation der Toolchain ist es hilfreich zu verstehen, warum Rails nach wie vor eine beliebte Wahl für die Schiffsentwicklung ist.ping Webanwendungen schnell.
- Rails ist als Ruby-Gem verpackt und kann zur Erstellung einer Vielzahl von Anwendungen verwendet werden.
- Es ermöglicht Ihnen die Erstellung regulärer Webanwendungen, E-Commerce-Websites, Content-Management-Systeme und mehr.
- Rails ist ein Full-Stack-Framework, das alles enthält, was Sie zum Erstellen einer datenbankgesteuerten Webanwendung unter Verwendung des Model-View-Controller (MVC)-Musters benötigen.
- Alle Ebenen sind so konzipiert, dass sie nahtlos zusammenarbeiten, daher benötigen Rails-Projekte in der Regel weniger Codezeilen als vergleichbare Projekte in anderen Frameworks.
So laden Sie Ruby herunter und installieren es Windows
Der Installationsprozess ist von Ihrem Betriebssystem abhängig. In den nächsten Abschnitten wird die Installation von Ruby auf einem Betriebssystem beschrieben. Windows, Mac und Linux.
Schritt 1) Rubyinstaller herunterladen.
Der einfachste Weg, Ruby auf Ihrem zu installieren Windows Der Computer wird über den Ruby Installer installiert, der unter folgender Adresse verfügbar ist: https://rubyinstaller.org/.
Nach dem Herunterladen führen Sie das Installationsprogramm aus.
Schritt 2) Klicken Sie auf das heruntergeladene Installationsprogramm.
Double-Klicken Sie auf die heruntergeladene Installationsdatei, zum Beispiel rubyinstaller-2.4.1-2-x64.exe.
Schritt 3) Akzeptiere die Lizenz.
Wählen Sie das Optionsfeld „Ich akzeptiere die Lizenz“ aus und klicken Sie auf „Weiter“. Anschließend sollte der untenstehende Bildschirm angezeigt werden.
Schritt 4) Markieren 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. Nach Abschluss der Installation sollte der untenstehende Bildschirm angezeigt werden.
Schritt 5) Klicken Sie auf Fertig stellen.
Deaktivieren Sie nicht die Option zur Installation von MSYS2. Klicken Sie auf „Fertigstellen“, um die Installation abzuschließen. Ein Eingabeaufforderungsfenster öffnet sich wie unten dargestellt.
Schritt 6) Installieren Sie MSYS2.
Dieser Schritt installiert MSYS2, eine Build-Plattform mit einem Paketmanager zur einfachen Installation von Paketen auf Windows.
Drücken Sie die Eingabetaste, um alle Komponenten zu installieren, da diese für eine reibungslose Ruby on Rails-Entwicklungsumgebung erforderlich sind. Windows.
Schienen installieren
Ruby sollte bereits aus dem vorherigen Abschnitt installiert sein. Installieren Sie als Nächstes Rails. Sie können Rails mithilfe eines Pakets installieren von RailsInstallerDas Paket enthält jedoch häufig nicht die neueste Version aller benötigten Abhängigkeiten.
Wenn Sie bereits die neueste Ruby-Version sowie die RubyGems und Erweiterungen installiert haben, führen Sie einfach den folgenden Befehl in der Kommandozeile aus, um Rails auf Ihrem System zu installieren: gem install rails.
Sie müssen auch installieren Node.js Falls Sie es noch nicht haben, da einige Bibliotheken, von denen Rails abhängt, es benötigen. JavaDamit das Skript korrekt funktioniert, rufen Sie Node ab unter https://nodejs.org.
Ein gebräuchlicherer und bevorzugter Ansatz bei Windows ist das zu benutzen Windows Subsystem für Linux. Es bietet eine GNU/Linux-Umgebung mit Kommandozeilen-Tools, Dienstprogrammen und gängigen Anwendungen direkt in Windows.
Ruby auf dem Mac installieren
Auf Ihrem Mac ist Ruby bereits vorinstalliert. Die vorinstallierte Version ist jedoch oft veraltet, daher sollten Sie eine neuere Version installieren.
Am einfachsten geht das mit einem Paketmanager wie zum Beispiel HomebrewMöglicherweise müssen Sie zuerst Homebrew installieren, indem Sie den unten stehenden Befehl im Terminal ausführen.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Es erscheint eine Warnung, und Sie werden zur Eingabe Ihres Passworts aufgefordert. Geben Sie Ihr Mac-Passwort ein (die Zeichen werden während der Eingabe nicht angezeigt) und drücken Sie anschließend die Eingabetaste. Führen Sie dann diesen Homebrew-Befehl aus, um Ruby auf Ihrem Mac zu installieren.
brew install ruby
Führen Sie dann diesen Befehl aus:
echo 'export PATH="/usr/local/bin:/usr/local/sbin:$PATH"' >> ~/.bash_profile
Dadurch wird die neue Ruby-Installation als Standard-Ruby auf Ihrem System festgelegt, anstatt der vorinstallierten Ruby-Version.
Um zu bestätigen, dass die Installation erfolgreich war, führen Sie Folgendes im Terminal aus:
ruby --version
Hiermit wird die Versionsnummer Ihrer installierten Ruby-Version ausgegeben. Die Ausgabe sieht etwa so aus:
ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]
Ruby installieren auf Ubuntu (Linux)
Der einfachste Weg, Ruby zu installieren auf Ubuntu Die Installation erfolgt über den Paketmanager apt. Führen Sie die folgenden Befehle im Terminal aus, um die neueste Ruby-Version zu installieren. Ubuntu Repositories.
- sudo apt aktualisieren – Dadurch wird der Standardwert aktualisiert. Ubuntu Repositories.
- sudo apt install ruby-full – Dadurch wird die neueste Ruby-Version heruntergeladen und installiert.
Um die Installation zu bestätigen, führen Sie Folgendes aus: ruby -versionHiermit wird die installierte Ruby-Version angezeigt.
Schienen anbringen Ubuntu (Linux)
Folgen Sie den nachstehenden Schritten, um Rails auf Ihrem Linux-Rechner zu installieren.
Schritt 1) Aktualisieren Sie Ihren Gem-Manager mit folgendem Befehl: gem update --system im Terminal oder in der Eingabeaufforderung.
Schritt 2) Führen Sie Gem installieren Schienen um die neueste Version von Rails auf Ihrem Computer zu installieren.
Schritt 3) Installieren Sie das Bundler-Gem für die einfache Verwaltung von Gem-Abhängigkeiten in Rails-Anwendungen. Führen Sie Folgendes aus: Gem-Installationspaketierer.
Zwei Prinzipien der Schienen
Rails folgt grundlegenden Software-Designprinzipien und ermutigt Sie, diese ebenfalls anzuwenden.
Die beiden häufigsten sind:
- Wiederholen Sie sich nicht (DRY) Dies führt zu prägnantem, konsistentem und wartbarem Code.
- Konvention über Konfiguration Rails ist mit sinnvollen Standardeinstellungen vorkonfiguriert, die für die meisten Anwendungsfälle geeignet sind. Dies beschleunigt die Anwendungsentwicklung und reduziert den Wartungsaufwand.
Rails – Projektdateistrukturen
Nachdem Rails auf Ihrem System installiert ist, erstellen Sie eine Rails-Anwendung. In den folgenden Abschnitten wird anhand eines Ruby-on-Rails-Beispiels eine To-Do-Listen-Anwendung erstellt. Führen Sie folgenden Befehl in Ihrem Terminal aus, um die Anwendung zu erstellen:
rails new todo_app
Dieser Befehl erstellt ein Verzeichnis mit dem Namen todo_app im aktuellen Verzeichnis mit der grundlegenden Ordnerstruktur einer Rails-Webanwendung, wie unten dargestellt.
Hier sind die für das Projekt generierten Hauptverzeichnisse:
App – gruppiert Unterverzeichnisse für die Benutzeroberfläche/das Layout (Ansichten und Hilfsfunktionen), den Controller (Controller-Dateien) und die Modelle (Geschäfts-/Anwendungslogik).
App/Controller – Speichert Controller-Dateien, die von Rails zur Bearbeitung von Client-Anfragen verwendet werden.
App/Assets – enthält statische Dateien, die vom Frontend der Anwendung benötigt werden, gruppiert nach Typ: JavaSkript Dateien, Bilder und Stylesheets.
App/Helfer – enthält Hilfsfunktionen, die dafür sorgen, dass Ihr Anwendungsmodell, Ihre Ansicht und Ihre Controller-Logik fokussiert, klein und übersichtlich bleiben.
App/Modelle – enthält Dateien, die die Datenbank Ihrer Anwendung modellieren. Die Modellklassen erleichtern die Arbeit mit der Datenbank erheblich.
App/Ansichten – Enthält die Vorlagen-/Layoutdateien, mit denen der Benutzer Ihrer Anwendung interagiert. Die Vorlagen kombinieren HTML mit Daten aus der Datenbank.
Kasten – enthält Rails-Skripte, die Ihre Anwendung starten. Es kann auch andere Skripte enthalten, die Sie zum Einrichten und Aktualisieren der Anwendung verwenden.
Config – enthält Konfigurationsdateien wie z. B. Datenbank.yml, Umgebung.rb, Routen.rbusw., die Ihre Anwendung zum Ausführen benötigt.
db – enthält Dateien und Skripte zur Verwaltung Ihrer Anwendungsdatenbank.
lib – enthält erweiterte Module für Ihre Anwendung.
Log – enthält Protokolldateien wie z. B. server.log, development.log, test.log und Production.log, wird zum Debuggen oder Überwachen Ihrer Anwendung verwendet.
Öffentlichkeit – enthält statische Dateien und kompilierte Assets, wie z. B. HTML-Dateien, JavaSkriptdateien, Bilder und Stylesheets.
Test – enthält Testdateien, die Sie zum Testen der Funktionalität Ihrer Anwendung schreiben.
tmp – enthält temporäre Dateien wie Cache- und PID-Dateien.
Verkäufer – enthält Bibliotheken von Drittanbietern.
Gemfile – Legt die grundlegenden Gem-Anforderungen für den Betrieb Ihrer Webanwendung fest. Sie können die Gems in Entwicklung, Test oder Produktion gruppieren, und Rails weiß, wann welches Gem eingebunden werden muss.
Gemfile.lock Im Gegensatz zur Gemfile, die die für Ihre Anwendung benötigten Gems explizit auflistet, enthält die Gemfile.lock zusätzlich weitere Gems, von denen die in der Gemfile aufgeführten Gems abhängen. Diese werden automatisch installiert, um die Abhängigkeiten zu erfüllen.
Readme.md – Verwenden Sie diese Datei, um wichtige Details zu Ihrer Anwendung mitzuteilen, z. B. was die App kann und wie man sie installiert und ausführt.
Rakefile – enthält verschiedene Rake-Taskdefinitionen, die dazu beitragen, alltägliche Administrationsaufgaben Ihrer Anwendung zu automatisieren.
config.ru – eine Rack-Konfigurationsdatei, die eine Schnittstelle zum Webserver bereitstellt, um Ihre Anwendung zu starten.
Wechseln Sie in das Verzeichnis todo_app Verzeichnis Rails generiert und ausgeführt Rails-Server um die Anwendung zu starten. Typ localhost: 3000 Geben Sie dies in die Adresszeile Ihres Webbrowsers ein. Wenn alles geklappt hat, sollte der untenstehende Bildschirm angezeigt werden.
Dies ist die Standard-Startseite Ihrer Anwendung. Sie werden sie in einem späteren Abschnitt dieses Ruby-on-Rails-Tutorials ändern. Sie können den Server durch Drücken von [Taste] stoppen. Strg + C.
Rails – Befehle generieren
Der Rails-Befehl `generate` verwendet Vorlagen, um viele nützliche Elemente in Ihrer Anwendung zu erstellen. Diese Generatoren sparen viel Zeit.
Sie schreiben Standardcode, der für die Funktion Ihrer Webanwendung notwendig ist. Ausführen Rails-Generierung Geben Sie es einfach in der Kommandozeile oder im Terminal ein, um eine Liste der verfügbaren Generatoren anzuzeigen, wie unten dargestellt.
Sie können auch laufen Rails-Generierung Eine Beschreibung der Funktion des Befehls finden Sie hier. Dort werden nützliche Optionen und ein Anwendungsbeispiel aufgeführt. Die folgende Abbildung zeigt die Ausgabe der Ausführung. rails generate controller.
Verwenden Sie den Befehl `rails generate scaffold`, um automatisch das Modell, die Ansicht und den Controller für Ihre To-Do-Listen-Anwendung zu erstellen. Führen Sie dazu folgenden Befehl in Ihrem Terminal aus (stellen Sie sicher, dass Sie sich noch im Terminal befinden). todo_app Verzeichnis):
rails generate scaffold todo_list title:string description:text
Dadurch wird eine vollständige CRUD-Weboberfläche (Erstellen, Lesen, Aktualisieren, Löschen) für die Tabelle „TodoLists“ erstellt.
Ein weiterer nützlicher Befehl ist Schienen zerstörenEs kehrt alles um, was auch immer. Rails-Generierung tut.
Schienen – Routing
Das Rails-Routingsystem, der sogenannte Rails-Router, verarbeitet alle eingehenden Anfragen an Ihre Webanwendung. Er untersucht die URL wird auf jede Anfrage angewendet und ordnet sie der für ihre Bearbeitung zuständigen Controller-Aktion zu, wobei die in der Routendatei angegebene Syntax verwendet wird (config / route.rb).
Die Routendatei steuert alles URL Rails verwendet ein RESTful-Design, das auf dem REST-Architekturstil basiert und eine Zuordnungstabelle für Ihre Webanwendung bereitstellt.ping zwischen HTTP-Verben und Anfrage URLs zu Controller-Aktionen.
Die Routendatei wurde bei der Ausführung generiert Schienen neu Früher. Fahren Sie mit der von Ihnen erstellten Todo-Anwendung fort und führen Sie Folgendes aus:
rails db:migrate
Stellen Sie sicher, dass Sie sich noch im Stammverzeichnis der Anwendung befinden (dem todo_app Verzeichnis).
Starten Sie den Server erneut mit Rails-Server. Art http://localhost:3000/todo_lists/ Geben Sie die entsprechende Taste in Ihren Browser ein und drücken Sie die Eingabetaste. Sie sollten dann eine Webseite wie die unten stehende sehen.
Dies ist die Aufgabenlistenansicht, die vom Gerüstbefehl generiert wurde und vom TodoListsController gesteuert wird. Index Maßnahmen.
Fügen Sie eine Aufgabenliste hinzu, indem Sie auf der Seite auf „Neue Aufgabenliste“ klicken. Anschließend sollte der untenstehende Bildschirm angezeigt werden.
Beachten Sie die URL ist jetzt http://localhost:3000/todo_lists/newDies ist die Seite zum Erstellen einer neuen Aufgabenliste und wird vom TodoListsController gesteuert. neu Methode.
Geben Sie im Formular den Titel und die Beschreibung Ihrer Aufgabenliste ein und klicken Sie auf „Aufgabenliste erstellen“. URL sollte sich ändern zu http://localhost:3000/todo_lists/1, Wie nachfolgend dargestellt.
Dies ist die Übersichtsseite einer Aufgabenliste, die vom TodoListsController gesteuert wird. erklären Methode. Wenn Sie zu dieser Methode zurückkehren http://localhost:3000/todo_lists/Sie sollten nun den untenstehenden Bildschirm mit der hinzugefügten neuen Aufgabenliste sehen.
Rails konnte mithilfe der Routendefinition in jeder Anfrage die entsprechende TodoListsController-Aktion zuordnen. config / route.rb.
Wenn Sie einen Blick in diese Datei werfen, sehen Sie eine einzelne Zeile. Ressourcen: AufgabenlistenDies ist die Standardmethode von Rails zum Schreiben von RESTful-Routen. Diese einzelne Zeile erzeugt sieben Routen, die alle einer Map zugeordnet sind.ping zum TodoLists-Controller.
Konventionsgemäß ist jede Controller-Aktion einer bestimmten CRUD-Operation (Erstellen, Lesen, Aktualisieren, Löschen) in der Datenbank zugeordnet.
Führen Sie Bahnstrecken Geben Sie in Ihrer Befehlszeile die verschiedenen in Ihrer Anwendung verfügbaren Routen ein. Die folgende Abbildung zeigt die Ausgabe des Befehls. Bahnstrecken.
Schienen – Ansichten
Die View-Schicht ist eine Komponente des MVC-Paradigmas und generiert die HTML-Antwort für jede Anfrage an Ihre Anwendung. Rails verwendet standardmäßig ERB (Embedded Ruby), ein leistungsstarkes Template-System für Ruby.
ERB vereinfacht das Schreiben und Warten von Templates durch die Kombination von Klartext mit Ruby-Code für Variablenersetzung und Ablaufsteuerung. Ein ERB-Template verwendet die .html.erb Erweiterung.
Sie werden hauptsächlich zwei Tag-Markierungen verwenden, von denen jede bewirkt, dass der eingebettete Code auf eine bestimmte Weise verarbeitet und behandelt wird.
Ein Tag mit einem Gleichheitszeichen <%= %> Dies bedeutet, dass der eingebettete Code ein Ausdruck ist und das Ergebnis des Codes beim Rendern der Vorlage in die Ausgabe eingesetzt werden soll.
Das andere Tag ohne Gleichheitszeichen <% %> weist den Renderer darauf hin, dass das Ergebnis des Codes nicht ersetzt oder in der Ausgabe gedruckt werden soll.
Jeder Controller in Ihrer Rails-Anwendung verfügt über ein entsprechendes Unterverzeichnis in App/Ansichtenund jede Aktion in einem Controller hat eine entsprechende .html.erb Datei in diesem Unterverzeichnis.
Wirf einen Blick auf App/Ansichten der Todo-App, die Sie gerade erstellen. Sie finden dort ein Unterverzeichnis mit dem Namen Aufgabenlisten mit .html.erb Dateien mit Namen, die den Aktionen in der TodoListen Regler.
Schienen – ActiveRecord, Active Record Pattern und ORM
ActiveRecord ist die Ruby-Implementierung des Active-Record-Musters. In diesem Muster repräsentiert eine Klasse eine Datenbanktabelle, und eine Instanz der Klasse repräsentiert eine Zeile in dieser Tabelle.
ActiveRecord wird gemeinhin als ORM (Objektrelationale Map) bezeichnet.pingDie Datenbankverwaltungsschicht ist eine Technik, mit der Sie Ihre Datenbank mithilfe einer Ihnen vertrauten Programmiersprache verwalten können. Sie ist datenbankunabhängig, sodass Sie problemlos zwischen verschiedenen Datenbanken wechseln können – zum Beispiel SQLite, MySQL, PostgreSQL, SQL Server oder Oracle — unter Verwendung desselben Codes und derselben Logik.
Um beispielsweise ein Array zu erhalten, das alle Todo-Listen Ihrer Anwendung enthält, müssen Sie keinen Code schreiben, der eine Verbindung öffnet, eine SQL-SELECT-Abfrage ausführt und das Ergebnis konvertiert.
Sie tippen einfach TodoList.allActiveRecord gibt ein Array zurück, das mit TodoList-Objekten gefüllt ist, die Sie nach Belieben verwenden können.
Sie müssen lediglich die Konfiguration einrichten in config/database.ymlActiveRecord kümmert sich um die Unterschiede zwischen Datenbanksystemen. Wenn Sie von einer Datenbank zu einer anderen wechseln, müssen Sie Ihren Code nicht neu schreiben.
Sie konzentrieren sich auf die Anwendungslogik, und ActiveRecord kümmert sich um die Details der Datenbankanbindung. Es verwendet Namenskonventionen, um Modelle Datenbanktabellen zuzuordnen.
Rails verwendet Pluralisierung der Modellklassennamen, um die entsprechende Datenbanktabelle zu finden. Für eine Klasse AufgabenlisteActiveRecord verwendet eine Datenbanktabelle namens Aufgabenlisten.
Schienen – Migrationen
Eine Rails-Migration ist ein Skript, mit dem Sie die Datenbank Ihrer Anwendung weiterentwickeln können. Es dient dazu, Ihre Datenbank einzurichten oder zu ändern, ohne manuell SQL-Code schreiben zu müssen.
Es verwendet Ruby, um Änderungen am Datenbankschema zu definieren und ermöglicht die Verwendung von Versionskontrolle, um Ihre Datenbank über verschiedene Umgebungen hinweg synchron zu halten.
Rails-Migrationen verwenden eine Ruby-domänenspezifische Sprache (DSL). Diese fungiert als abstrakte Sprache.traction und ermöglicht es Ihnen, Ihre Datenbank-Engine an Ihre Bedürfnisse anzupassen oder zu ändern.
Migrationen können mit allen Anwendern der Anwendung geteilt und Änderungen rückgängig gemacht werden. Dies ist ein starker Sicherheitsmechanismus, sodass Sie sich keine Sorgen um dauerhafte Schäden an Ihrer Datenbank machen müssen.
Rails – ActiveRecord-Zuordnungen
Eine Verbindung zwischen zwei ActiveRecord-Modellen wird als Assoziation bezeichnet. Assoziationen vereinfachen die Durchführung von Operationen an verknüpften Datensätzen in Ihrem Code erheblich. Es gibt vier gängige Kategorien.
Eins zu Eins: Ein Datensatz enthält genau eine Instanz eines anderen Modells. Ein gutes Beispiel ist ein Benutzerprofil – ein Benutzer hat nur ein Profil. Es verwendet das hat_eins Stichwort.
Einer zu vielen: Die häufigste Assoziation – ein Modell hat null oder mehr Instanzen eines anderen Modells. Verwenden Sie die hat_viele Schlüsselwort zur Bezeichnung dieser Assoziation.
Viel zu viel: etwas komplizierter. ActiveRecord bietet zwei Möglichkeiten, damit umzugehen: hat_und_gehört_vielen und has_many :through, wodurch Sie Zugriff auf das in einer separaten Tabelle definierte Join-Modell erhalten.
Polymorphe Eins-zu-Viele-Wechselwirkung: Eine fortgeschrittenere Assoziation in Rails. Sie definiert ein Modell, das zu vielen verschiedenen Modellen einer einzigen Assoziation gehören kann.
Rails – ActiveRecord-Validierungen
Die Validierung trägt dazu bei, sicherzustellen, dass Sie über korrekte Daten verfügen, denn die Arbeit mit fehlerhaften Daten ist riskant und kann Ihrem Unternehmen Geld kosten.
Die Validierung bietet zudem eine zusätzliche Sicherheitsebene gegen böswillige Benutzer, die versuchen, schädliche Daten in Ihre Datenbank einzuschleusen. Rails stellt in ActiveRecord eine übersichtliche API mit Validierungshilfsfunktionen bereit, die Ihre Datenbank sauber, sicher und fehlerfrei halten.
ActiveRecord-Validierungen werden an Modellobjekten durchgeführt, bevor diese in der Datenbank gespeichert werden. Dadurch sind sie zuverlässiger und entsprechen bewährten Verfahren.
Die folgenden ActiveRecord-Methoden lösen Validierungen aus, wenn sie für Modellobjekte aufgerufen werden: erstellen, erstellen!, speichern, speichern!, aktualisieren und aktualisieren!Die Bang-Versionen (Erstellen!, Speichern! und Aktualisieren!) wird eine Ausnahme ausgelöst, wenn der Datensatz ungültig ist, während die Versionen ohne Ausrufezeichen stattdessen false zurückgeben.
Die am häufigsten verwendeten Validierungshilfsfunktionen von ActiveRecord sind:
- Bestätigung: Prüft, ob zwei Felder denselben Wert haben, beispielsweise Passwort und Passwortbestätigung. Es wird zusammen mit dem Anwesenheitsvalidierungs-Helper verwendet.
- Gegenwart: prüft, ob das Feld nicht leer ist.
- Einzigartigkeit: gewährleistet einen eindeutigen Wert für ein Feld, zum Beispiel Benutzername.
- Länge: setzt eine maximale Zeichenlänge für ein Feld fest.
Sie können auch Ihre eigene benutzerdefinierte Validierung erstellen, indem Sie die bestätigen und übergeben Sie ihr den Namen einer benutzerdefinierten Validierungsmethode.
Überprüfen Sie das Modell Fehler Mithilfe dieses Objekts lässt sich herausfinden, warum eine Validierung fehlgeschlagen ist. Dadurch erhalten Sie alle notwendigen Informationen, um Ihre Anwendung sicherer und restriktiver zu gestalten und nur gültige 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 von Anwendungscontroller, das Code enthält, der in allen anderen Controllern ausgeführt werden kann, und das seinerseits von erbt ActionController::Base.
Der Controller stellt Ihrer Anwendung Folgendes zur Verfügung:
- Es leitet externe Anfragen an interne Aktionen weiter.
- Es übernimmt das Caching und steigert so die Leistung Ihrer Anwendung.
- Es verwaltet Hilfsmethoden, die die Funktionalität von Ansichtsvorlagen erweitern, und verwaltet außerdem Benutzersitzungen, um den Benutzern ein reibungsloses Erlebnis zu bieten.
Schienen – Konfigurationen
Sie können Komponenten wie Initialisierer, Assets, Generatoren und Middleware mithilfe Ihrer Rails-Anwendungsinitialisierer und Konfigurationsdateien konfigurieren. Config Verzeichnis. Dateien wie config/application.rb, config/environments/development.rb und config/environments/test.rb werden hier verwendet. Sie können auch benutzerdefinierte Einstellungen für Ihre Anwendung hinzufügen.
Rails – Debuggen
Beim Entwickeln Ihrer Anwendung müssen Sie Ihren Code debuggen. Rails macht dies mit dem byebug Sie können eine Debugging-Sitzung starten, indem Sie das Schlüsselwort eingeben. byebug an beliebiger Stelle in Ihrem Anwendungscode.
Dies unterbricht die Ausführung an dieser Stelle vorübergehend. Das byebug-Gem bietet mehrere Befehle. Die nützlichsten sind:
- nächstes: springt zur nächsten Codezeile, überspringenping alle Methoden, die in der aktuellen Zeile aufgerufen werden.
- Schritt: ähnlich weiter, sondern es werden Schritte in jede aufgerufene Methode ausgeführt.
- brechen: stoppt die Codeausführung.
- weiter: setzt die Codeausführung fort.
Es sind weitere Debugging-Bibliotheken verfügbar, wie zum Beispiel neugierig seinSie alle bieten ähnliche Funktionen mit leicht unterschiedlicher Syntax. Debugging-Gems sollten nicht in Produktionsumgebungen eingesetzt werden, da sie Risiken für Ihre Anwendung bergen und die Benutzererfahrung beeinträchtigen.
Protokolldateien können in der Produktionsumgebung auf Fehler überprüft und entsprechend behandelt werden. Um sicherzustellen, dass Ihre Anwendung vor der Bereitstellung in der Produktionsumgebung einwandfrei funktioniert, sollten Sie beim Erstellen Ihrer Anwendung außerdem einen testgetriebenen Entwicklungsansatz (TDD) verfolgen.













