Quickstarters
Feature Overview
Wie man ein Backend für Ruby On Rails aufbaut?
34 min
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 ob sie nun 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 https //www back4app com/docs/get started/new parse app 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 https //guides rubyonrails org/getting started html parse ruby client wenn sie beabsichtigen, das parse sdk direkt zu verwenden, können sie das parse ruby client https //github com/parse community/parse sdk ruby 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 https //guides rubyonrails org/ 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 melden sie sich bei ihrem back4app konto an klicken sie auf die schaltfläche „neue app“ in ihrem back4app dashboard geben sie ihrer app einen namen (z b „rails backend tutorial“) 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 ) fügen sie das parse ruby client gem hinzu zu ihrem gemfile gem 'parse ruby client' führen sie dann aus bundle install initialisieren sie parse in einem initialisierer, wie zum beispiel config/initializers/parse rb \# config/initializers/parse rb require 'parse' parse init application id 'your application id', api key 'your rest api key', server url 'https //parseapi back4app com' 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 navigieren sie zu „datenbank“ in ihrem back4app dashboard erstellen sie eine neue klasse mit dem namen „todo“ und fügen sie spalten wie title (string) und iscompleted (boolean) hinzu 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) erstellen eines datenmodells mit dem ki agenten der ki agent von back4app kann die erstellung von schemata automatisieren öffnen sie den ki agenten von ihrem dashboard beschreiben sie ihr datenmodell (z b „bitte erstellen sie eine neue todo app mit einem vollständigen klassenschema “) lassen sie den agenten ihr schema generieren daten lesen und schreiben mit sdk wenn sie sich entscheiden, den parse ruby client , zu integrieren, können sie einen datensatz wie folgt speichern \# app/controllers/todos controller rb def create todo class = parse object new('todo') todo class\['title'] = params\[ title] todo class\['iscompleted'] = false begin todo class save render json { message 'todo saved successfully' } rescue => e render json { error e message }, status 500 end end def index query = parse query new('todo') results = query get render json results end 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 curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "finish rails guide", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo daten lesen und schreiben mit der graphql api back4app bietet auch graphql an mutation { createtodo(input { fields { title "plan web pages" iscompleted false } }) { todo { objectid title iscompleted } } } 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 einrichten von klassenebene berechtigungen gehen sie zur datenbank in ihrem back4app dashboard wählen sie eine klasse (z b „todo“) ö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 todo = parse object new('todo') acl = parse acl new \# set read/write for a user acl set read access for(user id, true) acl set write access for(user id, true) todo acl = acl todo save schritt 4 – schreiben von cloud code funktionen warum cloud code cloud code führt serverseitiges javascript aus, ermöglicht entwicklern benutzerdefinierte logik, trigger und validierungen hinzuzufügen, ohne einen eigenen webserver möglicherweise möchten sie 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 verarbeitet, können sie dennoch cloud code verwenden, um daten zu verarbeiten parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) { throw new error('no text provided'); } return { length text length }; }); 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 curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"username" "john", "password" "secretpass"}' \\ https //parseapi back4app com/users 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 https //www back4app com/docs/platform/sign in with apple 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 file data = file open('path/to/image jpg') parse file = parse file new('image jpg', file data) begin parse file save puts "file uploaded #{parse file url}" rescue => e puts "error uploading file #{e message}" end beispiel sie können diese datei dann einem objekt anhängen photo obj = parse object new('photo') photo obj\['imagefile'] = parse file photo obj save schritt 7 – e mail verifizierung und passwortzurücksetzung e mail verifizierung aktivieren in ihrem back4app dashboard unter e mail einstellungen passwortzurücksetzung einrichten durch anpassen der e mail vorlage und der domain einstellungen 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 parse cloud job('cleanupoldtodos', async (request) => { const todo = parse object extend('todo'); const query = new parse query(todo); const now = new date(); const thirty days = 30 24 60 60 1000; const cutoff = new date(now thirty days); query lessthan('createdat', cutoff); try { const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; } catch (err) { throw new error('error during cleanup ' + err message); } }); 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 gehen sie zu mehr > webhooks in ihrem back4app dashboard fügen sie einen neuen webhook hinzu der auf ihre externe url zeigt (z b eine route in ihrem rails controller) geben sie das ereignis an das den webhook auslöst 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 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 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 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 benutzererlebnissen 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 schnell entwickeln, iterieren und skalieren, um moderne webanwendungen zu erstellen viel spaß beim programmieren!