Schnellstarter

Wie man ein Backend für Ruby On Rails aufbaut?

34min

Einführung

In diesem Tutorial lernen Sie, wie Sie ein Backend für Ruby on Rails mit Back4App erstellen.

Wir werden die wichtigsten Schritte erkunden, um Ihre Rails-Anwendung mit wesentlichen Back4App-Funktionen zu integrieren – wie Datenbankinteraktionen, Cloud-Code-Funktionen, REST- und GraphQL-APIs, Benutzerauthentifizierung und Echtzeitanfragen (Live Queries) – alles läuft auf der Serverseite.

Durch die Nutzung der Programmiersprache Ruby werden Sie eine robuste und skalierbare Architektur aufbauen, die mit dem View-Controller-MVC-Muster in Rails übereinstimmt und Entwicklern ermöglicht, die Entwicklung von Webanwendungen zu beschleunigen.

Sie werden auch entdecken, wie Back4App die Zeit und den Aufwand drastisch reduziert, indem es das Management von Servern und Datenbanken vereinfacht.

Diese automatisierten Funktionen können Sie davor bewahren, einen Webserver manuell einzurichten oder sich mit komplexen Infrastrukturen auseinanderzusetzen.

Am Ende werden Sie über eine flexible und sichere Struktur verfügen, die bereit für die Produktion oder weitere Erweiterungen ist – wie zusätzliche Integrationen und erweiterte benutzerdefinierte Logik.

Egal, ob Sie Webseiten bereitstellen oder datengetriebene Webanwendungen betreiben möchten, Rails und Back4App bieten eine nahtlose Synergie zur Erstellung moderner Lösungen in beliebten Programmiersprachen.

Voraussetzungen

Um dieses Tutorial abzuschließen, benötigen Sie:

  • Ein Back4App-Konto und ein neues Back4App-Projekt Erste Schritte mit Back4app. Wenn Sie kein Konto haben, können Sie eines kostenlos erstellen. Befolgen Sie die obige Anleitung, um Ihr Projekt vorzubereiten.
  • Eine Ruby on Rails-Entwicklungsumgebung Stellen Sie sicher, dass Ruby installiert ist (vorzugsweise Version 2.7 oder höher) und das Rails-Gem (Rails 6 oder höher). Rails installieren
  • Parse Ruby-Client Wenn Sie beabsichtigen, das Parse SDK direkt zu verwenden, können Sie das parse-ruby-client Gem installieren, um Datenoperationen mit Back4App zu verwalten.
  • Vertrautheit mit Rails MVC Wenn Sie neu in Ruby on Rails sind, überprüfen Sie die offiziellen Rails-Anleitungen oder ein Anfänger-Tutorial, um die MVC-Architektur des View Controllers von Rails zu verstehen, bevor Sie beginnen.

Stellen Sie sicher, dass diese Voraussetzungen erfüllt sind, bevor Sie beginnen. Wenn Ihr Back4App-Projekt eingerichtet ist und Ihr Rails-Anwendung Gerüst bereit ist, sorgt dies für ein reibungsloses Tutorial-Erlebnis.

Schritt 1 – Erstellen eines neuen Projekts auf Back4App und Verbindung herstellen

Neues Projekt erstellen

Der erste Schritt zur Einrichtung eines serverseitigen Backends für Ihre Rails-Anwendung besteht darin, ein neues Projekt auf Back4App zu erstellen. Wenn Sie dies noch nicht getan haben:

  1. Melden Sie sich bei Ihrem Back4app-Konto an.
  2. Klicken Sie auf die Schaltfläche „Neue App“ in Ihrem Back4App-Dashboard.
  3. Geben Sie Ihrer App einen Namen (z. B. „Rails-Backend-Tutorial“).
Document image


Sobald das Projekt erstellt ist, wird es in Ihrem Back4App-Dashboard sichtbar sein. Dieses neue Projekt bildet den Kern aller Backend-Konfigurationen in diesem Tutorial.

Verbinden Sie das Parse SDK (Optional: parse-ruby-client)

Um Datenbankinteraktionen und Echtzeitanfragen zu optimieren, verwendet Back4App die Parse-Plattform. Wenn Sie Ihren Rails-Server direkt mit Parse integrieren möchten, können Sie das parse-ruby-client-Gem installieren. Andernfalls können Sie auf die Standard-REST- oder GraphQL-Endpunkte zurückgreifen.

Rufen Sie Ihre Parse-Schlüssel ab: Gehen Sie in Ihrem Back4App-Dashboard zu den „App-Einstellungen“ oder „Sicherheit & Schlüssel“, um Ihre Anwendungs-ID und REST-API-Schlüssel. Sie erhalten auch Ihre Parse-Server-URL (z. B. https://parseapi.back4app.com).

Document image


Fügen Sie das parse-ruby-client-Gem hinzu zu Ihrem Gemfile:

Ruby


Führen Sie dann aus:

Bash


Initialisieren Sie Parse in einem Initialisierer, wie config/initializers/parse.rb:

Ruby


An diesem Punkt kann Ihre Rails-Anwendung mit Back4App kommunizieren, um Daten zu speichern und abzurufen, benutzerdefinierte Logik zu orchestrieren und mehr. Dieser integrierte Ansatz vereinfacht, wie Ihre Ruby on Rails-App das Backend behandelt.

Schritt 2 – Datenbank einrichten

Erstellen eines Datenmodells

In vielen Webanwendungen, definieren Sie Ihre Datenstruktur in Rails mit ActiveRecord-Migrationen. Mit Back4App haben Sie auch die Möglichkeit, Ihr Schema direkt im Dashboard zu erstellen. Zum Beispiel, wenn Sie ein Todo-Modell haben:

  1. Navigieren Sie zu „Datenbank“ in Ihrem Back4App-Dashboard.
  2. Erstellen Sie eine neue Klasse mit dem Namen „Todo“ und fügen Sie Spalten wie title (String) und isCompleted (Boolean) hinzu.
Neue Klasse erstellen
Neue Klasse erstellen


Back4App unterstützt String, Number, Boolean, Date, File, Pointer, Relation, Array, GeoPoint, und Polygon. Rails verwaltet diese typischerweise innerhalb seiner Modelldefinitionen, aber Sie können auch Parse erlauben, Spalten automatisch beim ersten Speichern zu erstellen (wenn Sie das Parse SDK oder REST/GraphQL APIs verwenden).

Spalte erstellen
Spalte erstellen


Erstellen eines Datenmodells mit dem KI-Agenten

Der KI-Agent von Back4App kann die Erstellung von Schemata automatisieren:

  1. Öffnen Sie den KI-Agenten von Ihrem Dashboard.
  2. Beschreiben Sie Ihr Datenmodell (z.B. „Bitte erstellen Sie eine neue ToDo-App mit einem vollständigen Klassenschema.“).
  3. Lassen Sie den Agenten Ihr Schema generieren.
Document image


Daten lesen und schreiben mit SDK

Wenn Sie sich entscheiden, den parse-ruby-client, zu integrieren, können Sie einen Datensatz wie folgt speichern:

Ruby


Daten lesen und schreiben mit der REST-API

Alternativ können Sie REST-Aufrufe aus Ihrem Rails-Code (oder einem externen Client) verwenden. Zum Beispiel, um ein Todo:

Bash


Daten lesen und schreiben mit der GraphQL-API

Back4App bietet auch GraphQL an:

GraphQL


Arbeiten mit Live-Abfragen (optional)

Wenn Sie Echtzeit-Updates in Ihrer Rails-Anwendung, können Sie sich von einem Frontend oder einem WebSocket-Client für Live-Abfragen anmelden. Aktivieren Sie Live-Abfragen in Ihren Back4App Servereinstellungen, und verbinden Sie sich dann mit dem wss://YOUR_SUBDOMAIN.b4a.io für einen fortlaufenden Stream von Änderungen. Dies ist hilfreich für dynamische Webanwendungen die sofortige Datenaktualisierungen benötigen.

Schritt 3 – Sicherheit mit ACLs und CLPs anwenden

Kurze Übersicht

Sicherheit ist entscheidend in der Entwicklung von Webanwendungen. Back4App bietet Zugriffskontrolllisten (ACLs) und Klassenebene-Berechtigungen (CLPs) an, um die Sichtbarkeit von Daten sowohl auf Objekt- als auch auf Klassenebene zu steuern. Dies hilft sicherzustellen, dass nur authentifizierte oder autorisierte Benutzer sensible Daten lesen/schreiben können.

Document image


Einrichten von Klassenebene-Berechtigungen

  1. Gehen Sie zur Datenbank in Ihrem Back4App-Dashboard.
  2. Wählen Sie eine Klasse (z.B. „Todo“).
  3. Öffnen Sie die CLPs-Registerkarte, um Lese-/Schreibzugriff nach Rollen, authentifizierten Benutzern oder der Öffentlichkeit zu konfigurieren.

Konfigurieren von ACLs

Sie können eine ACL für ein Objekt festlegen, sodass nur ein bestimmter Benutzer es lesen oder ändern kann. In Rails mit parse-ruby-client, könnte es so aussehen:

Ruby


Schritt 4 – Schreiben von Cloud-Code-Funktionen

Warum Cloud-Code

Cloud-Code führt serverseitiges JavaScript aus, was Entwicklern ermöglicht, benutzerdefinierte Logik, Trigger und Validierungen hinzuzufügen, ohne einen eigenen Webserver zu verwalten. Sie möchten möglicherweise zusätzliche Serverlogik behandeln oder Überprüfungen durchführen, bevor Sie Daten speichern.

Beispiel-Funktion

Unten ist ein Beispiel in JavaScript. Während Ihr Rails-Server die Hauptanwendung verwaltet, können Sie dennoch Cloud-Code verwenden, um Daten zu verarbeiten:

JS


Bereitstellung

Bereitstellung über die Back4App CLI oder vom Back4App Dashboard. Cloud-Code ist eine bequeme Möglichkeit, Logik zu kapseln, die unter allen Clients geteilt wird, unabhängig davon, welche Programmiersprachen sie verwenden. Mit der Unterstützung von node-basierten Modulen (NPM) können Sie externe Pakete nahtlos integrieren.

Schritt 5 – Konfigurieren der Authentifizierung

Benutzerauthentifizierung aktivieren

Back4App verwaltet Benutzeranmeldungen, Logins und Sitzungen mit der integrierten Benutzerklasse von Parse. Sie können einen Benutzer mit einem REST-Aufruf oder über eines der offiziellen SDKs erstellen.

Bash


Sozialer Login

Sie können Facebook-, Google- oder Apple-Anmeldeflüsse integrieren. Jeder Anbieter hat einen etwas anderen Ansatz, aber das Hauptprinzip besteht darin, Tokens mit Parse auszutauschen. Überprüfen Sie die offiziellen Dokumentation zum sozialen Login für Details, wie Sie diese in Ihre Rails-Anwendung integrieren.

Schritt 6 – Umgang mit Dateispeicherung

Einrichten der Dateispeicherung

Die Verwendung von Parse für Dateien ist so einfach wie das Hochladen über die Parse-API. Wenn Sie den parse-ruby-client verwenden:

Ruby


Beispiel

Sie können diese Datei dann einem Objekt anhängen:

Ruby

Document image


Schritt 7 – E-Mail-Verifizierung und Passwortzurücksetzung

  1. E-Mail-Verifizierung aktivieren in Ihrem Back4App-Dashboard unter E-Mail-Einstellungen.
  2. Passwortzurücksetzung einrichten durch Anpassen der E-Mail-Vorlage und der Domain-Einstellungen.
  3. E-Mail-Flüsse auslösen automatisch nach der Benutzerregistrierung oder wenn ein Benutzer eine Passwortzurücksetzung anfordert. Dies gewährleistet eine verbesserte Sicherheit und hilft, den gültigen E-Mail-Besitz zu bestätigen.

Schritt 8 – Aufgaben mit Cloud-Jobs planen

Cloud Jobs

Wenn Sie Aufgaben wie das Bereinigen von Daten oder das Senden täglicher Zusammenfassungen automatisieren möchten, verwenden Sie Cloud Jobs:

JS


Sie können solche Jobs im Back4App Dashboard unter Servereinstellungen > Hintergrundjobs planen, um täglich oder in gewünschten Intervallen ausgeführt zu werden.

Schritt 9 – Integration von Webhooks

Webhooks ermöglichen es Ihrer Back4App-App, Daten an eine externe URL zu senden, wann immer bestimmte Ereignisse eintreten. Sie können neue oder aktualisierte Objektdaten an ein anderes System weiterleiten – wie Stripe oder Slack.

  1. Gehen Sie zu Mehr > WebHooks in Ihrem Back4App-Dashboard.
  2. Fügen Sie einen neuen Webhook hinzu der auf Ihre externe URL zeigt (z. B. eine Route in Ihrem Rails-Controller).
  3. Geben Sie das Ereignis an an, das den Webhook auslöst.
Webhook hinzufügen
Webhook hinzufügen


Wenn Sie möchten, können Sie auch einen Webhook aus dem Cloud Code auslösen, indem Sie eine HTTP-Anfrage in einer beforeSave- oder afterSave-Funktion machen.

BeforeSave WebHook
BeforeSave WebHook


Schritt 10 – Erkundung des Back4App Admin Panels

Die Back4App Admin App bietet eine benutzerfreundliche Möglichkeit für nicht-technische Teams oder Kunden, CRUD-Operationen auf Ihren Back4App-Daten durchzuführen. Diese Schnittstelle beseitigt die Notwendigkeit für direkte Codeänderungen oder die Nutzung des Parse Dashboards für grundlegende Aufgaben.

Wo man es findet

Sie können die Admin App aktivieren von Ihrem Dashboard aus, indem Sie zu Mehr > Admin App gehen und auf Admin App aktivieren klicken.

Admin-App aktivieren
Admin-App aktivieren


Funktionen

Sobald aktiviert, können Sie:

  • Daten erstellen und verwalten, ohne Abfragen zu schreiben.
  • Protokolle überwachen, Hintergrundjobs planen und Push-Benachrichtigungen verwalten (falls aktiviert).
  • Rollenbasierten Zugriff für Teammitglieder bereitstellen, um sichereres Bearbeiten zu ermöglichen.
Document image


Fazit

Herzlichen Glückwunsch! Sie haben gelernt, wie man ein Backend für Ruby on Rails mit Back4App erstellt. In diesem Tutorial haben Sie:

  • Ein Rails-Projekt konfiguriert um mit Back4App über REST, GraphQL oder den Parse Ruby Client zu interagieren.
  • Sichere Datenbankinteraktionen einrichten unter Verwendung von Klassenschemas, ACLs, CLPs und optionalen Live-Abfragen.
  • Benutzerauthentifizierung integriert mit E-Mail-Verifizierung und Passwortzurücksetzungen.
  • Cloud-Code bereitgestellt für benutzerdefinierte Logik, Trigger und geplante Aufgaben.
  • Datei-Uploads verwaltet, Webhooks genutzt und das Admin-Panel erkundet.

Durch die Kombination der MVC-Architektur von Ruby on Rails mit dem robusten Funktionsumfang von Back4App kann Ihre Rails-Anwendung nahtlos skalieren.

Sie sparen erheblich Zeit bei der Verwaltung der Infrastruktur, sodass Sie sich auf den Aufbau von Webanwendungen mit verfeinerten Benutzererfahrungen und zuverlässiger serverseitiger Logik konzentrieren können.

Nächste Schritte

  • Erweitern Sie Ihre Rails-App durch Hinzufügen komplexerer Beziehungen, Caching-Strategien oder fortgeschrittener Integrationen.
  • Drittanbieter-APIs integrieren (wie Zahlungs-Gateways) und Cloud-Code für tiefere Webanwendungsentwicklung nutzen.
  • Die offizielle Back4App-Dokumentation erkunden für erweiterte Sicherheit, Leistungsoptimierung, Protokollanalyse und mehr.
  • Mit Echtzeitfunktionen experimentieren um Chat-Apps oder kollaborative Plattformen zu erstellen – ideal für Daten, die sich häufig ändern.

Mit diesen Grundlagen können Sie Ihre Rails-Server für moderne Webanwendungen schnell entwickeln, iterieren und skalieren. Viel Spaß beim Programmieren!