Einsatz-Szenarios für den Rails Connector

Für den Einsatz unseres Rails Connectors ergeben sich mehrere Szenarios, die im Folgenden kurz vorgestellt werden.

  • Vorschau im CMS

    • Für die Vorschau im Redaktionssystem wird eine Ruby-on-Rails-Installation benötigt sowie die Rails-Anwendung, die die Vorschauseiten ausliefert. Diese Anwendung sollte einem Versionierungssystem entnommen werden.
    • Damit die Vorschau auf Benutzerseite funktioniert, wird ein Webserver benötigt, der GUI- und Vorschau-URLs zum entsprechenden Server umleitet. Diese Umleitung muss im Webserver eingerichtet werden. Ferner muss das GUI so konfiguriert werden, dass es die richtigen Vorschau-URLs erzeugt. Siehe Integration der Rails-Vorschau ins GUI.
  • Entwicklung und Layout

    Das Layout der Webseiten ist in den Views der Rails-Anwendung verankert. Normalerweise sind die folgenden Schritte erforderlich, um eine Entwicklungsumgebung für Rails-Anwendungen einzurichten:

    • Installieren Sie Ruby on Rails auf dem Entwicklungsrechner. Eine Fiona-Installation wird nicht benötigt, da keine Inhalte erstellt werden.
    • Legen Sie eine neue Rails-Anwendung an oder entnehmen Sie sie dem Versionierungssystem.
    • Installieren Sie in dieser Anwendung den Rails Connector, falls dies noch nicht geschehen ist.
    • Richten Sie auf dem Rechner eine Datenbank ein und spielen Sie in diese die Inhalte der Redaktionssystem-Datenbank ein oder konfigurieren Sie den direkten Zugriff auf die Datenbank des Redaktionssystems.
    • Sofern noch nicht geschehen, konfigurieren Sie das Datenbankmodell ihrer Anwendung, damit diese auf die Daten in der Datenbank zugreifen kann.
    • Erstellen oder ändern Sie in der Anwendung die Controllers und die Views, d.h. statten Sie die Anwendung mit Funktionalität (Geschäftslogik) und Layout (Präsentationslogik) aus.
    • Spielen Sie die Änderungen in regelmäßigen Abständen zurück ins Versionsverwaltungssystem, damit andere Entwickler desselben Projekts Ihre Arbeit nutzen können.
  • Test der Webanwendung

    Für professionelle Ruby-on-Rails Web-Anwendungen werden üblicherweise Testprogramme geschrieben, die sicherstellen, dass die Controller und die Views sich wie erwartet verhalten. In der Regel benötigen die Testprogramme eine eigene Datenbank, die sie mit Testdaten füllen. Die Tests gehören zum Entwicklungsprozess und laufen normalerweise auf dem jeweiligen Entwicklungssystem.

  • Live-System (Production)

    Auf dem Livesystem werden die Ruby-on-Rails-Laufzeitumgebung, die Webanwendung mit dem Rails Connector für Fiona sowie die Datenbank(en) mit den redaktionellen Inhalten aus dem CMS benötigt. Das CMS selbst wird auf dem Live-Server nicht benötigt. Zur Aktualisierung der Inhalte auf dem Live-System werden Replikationsmechanismen verwendet, wenn Aktualität von großer Wichtigkeit ist. Es ist jedoch auch möglich, die Inhalte per Datenbank-Dump und -Restore aus dem Redaktionssystem ins Live-System zu übertragen. Für die Aktualisierung der Web-Anwendung selbst stehen Deployment-Programme wie "Capistrano" zur Verfügung. Möglicherweise benötigen Sie auf dem Live-System eine weitere Datenbank, um den von Besuchern erzeugten Content zu speichern.

Environments

Jede Rails-Anwendung hat voreingestellt drei so genannte Umgebungen (engl. "environments") die den Einsatz der Anwendung in unterschiedlichen Szenarios unterstützen.

Ein Environment ist ein benannter Konfigurationssatz. Beim Start des Rails-Servers kann einer der verfügbaren Namen angegeben werden. Neben der zu verwendenden Datenbank spezifiziert das Environment globale Parameter, mit denen bestimmte Aspekte des Verhaltens der Applikation gesteuert werden können, beispielsweise ob Arbeitsversionen oder freigegebene Versionen verwendet werden sollen. Die voreingestellt vorhandenen Environments sind development (Entwicklungssystem), test (Testsystem) und production (Live-System).

Mit dem Rails Connector kommt für den Einsatz der Rails-Anwendung als CMS-Vorschau üblicherweise ein weiteres Environment hinzu, preview. Über dieses Environment wird (zusätzlich zur zu verwendenden Datenbank) definiert, dass die Arbeitsversionen der CMS-Dateien maßgeblich sind – im Unterschied zum Live-System, wo ausschließlich die freigebenen Versionen der CMS-Dateien verwendet werden.

Datenbank-Einsatz

Rails-Anwendungen können mit mehreren Datenbanken betrieben werden – im Falle des Rails Connectors ist dies eher die Regel denn die Ausnahme, weil auf der Live-Seite zum einen die redaktionellen Inhalte und zum anderen die von den Besuchern gespeicherten Daten wie Kommentare, Kundendaten und dergleichen verwendet werden. Da die redaktionellen Daten auf der Live-Seite nicht geändert werden, die Besucherdaten dagegen schon, setzt man zur klaren Trennung und aus Gründen der Stabilität und Datensicherheit unterschiedliche Datenbanken ein.

Sämtliche Datenbanken werden in der Datei config/database.yml der Rails-Anwendung konfiguriert. Typischerweise verwendet eine Rails-Anwendung die Datenbankverbindung, die den gleichen Namen hat wie das Environment. Der Rails Connector verwendet als Name cms, so dass Sie bestehende Verbindungen nicht zu ändern, sondern nur den neuen Abschnitt mit dem Namen cms hinzuzufügen brauchen.