Zurück zum Blog

Einrichten von Ruby on Rails mit PostgreSQL

Einrichten von Ruby on Rails mit PostgreSQL

Unter allen verfügbaren Datenbank-Engines ist PostgreSQL eine der beliebtesten. Es ist ein bekanntes Open-Source-Datenbanksystem, das für seine Zuverlässigkeit, robusten Funktionen und Leistung bekannt ist. Da PostgreSQL eine beliebte Wahl ist, wird es von fast allen gängigen Web-Frameworks unterstützt. Ähnlich wie seine Konkurrenten MySQL und SQLite hat auch PostgreSQL seine Stärken und Schwächen.

Ruby on Rails ist ein beliebtes Web-Framework, geschrieben in Ruby. Es ist ein datenbankunabhängiges Framework, was bedeutet, dass es mit einer Vielzahl von Datenbanken arbeiten kann. Standardmäßig setzt Rails SQL für Datenbankfunktionalitäten voraus. Es unterstützt jedoch auch die PostgreSQL-Integration.

Dieses Tutorial wird Sie durch den Prozess der Konfiguration von PostgreSQL für Ihre Ruby on Rails-Anwendung führen.

Ruby on Rails und PostgreSQL

Sowohl PostgreSQL und Ruby on Rails sind auf jeder UNIX/Linux-Distribution verfügbar. Sie sollten über die Standard-Paketserver verfügbar sein.

Eine alternative Methode ist die Verwendung von RVM (Ruby Version Manager). Es ist ein spezielles Tool zur Verwaltung von Ruby on Rails-Installationen. Der Vorteil dieses Ansatzes ist, dass RVM eine lokale Installation von Ruby on Rails erstellt. Es kann auch mehrere Versionen von Ruby verwalten und nahtlos zwischen ihnen wechseln. Hier ist ein Tutorial, das die Schritte zur Installation von Ruby on Rails mit RVM auf Ubuntu im Detail beschreibt.

Was PostgreSQL betrifft, werfen Sie einen Blick auf diese Kurzanleitung zur Installation und Konfiguration von PostgreSQL auf Ubuntu.

  • RVM installieren

Der Installationsprozess von RVM ist dank des von RVM angebotenen Installationsskripts ziemlich unkompliziert. Das Skript ist so konzipiert, dass es das Linux-System automatisch erkennt und dann alle erforderlichen Pakete herunterlädt und installiert. Wir benötigen die RVM-GPG-Schlüssel, um Pakete zu verifizieren. Dies stellt sicher, dass die empfangenen Pakete nicht gefälscht sind. Fügen Sie zuerst die RVM-GPG-Schlüssel hinzu:

gpg_recv_keys Ruby on Rails with PostgreSQL

Führen Sie dann das RVM-Installationsskript aus:

install_rvm Ruby on Rails with PostgreSQL

Überprüfen Sie abschließend die Installation:

verify_install

  • Rails installieren

Wir können nun RVM verwenden, um zusätzliche Komponenten zu installieren. Installieren Sie das Rails-Framework mit RVM:

gem_install_rails Ruby on Rails with PostgreSQL

  • PostgreSQL installieren

Der nächste Schritt erfordert, dass PostgreSQL bereits auf dem System vorinstalliert ist. Standardmäßig ist der einfachste Weg, PostgreSQL zu installieren, die Verwendung des Standard-Paketmanagers. Er ist für alle gängigen Linux-Distributionen verfügbar. Schauen Sie sich die PostgreSQL-Download-Seite für alle verfügbaren Installationsmethoden an. Unter Ubuntu konfigurieren die folgenden Befehle das PostgreSQL-Repository und installieren es sofort:

postgresql_get

add_postgresql_keys

apt_and_postgresql_update Ruby on Rails with PostgreSQL

Um die PostgreSQL-Unterstützung zu aktivieren, müssen wir das pg Gem installieren. Es ermöglicht die Schnittstellenbildung mit PostgreSQL aus Ruby-Code:

gem_install_pg

  • PostgreSQL konfigurieren

Nach der Installation konfigurieren wir die Tools, die wir für unsere Projekte benötigen. Wechseln Sie zuerst zum PostgreSQL-Benutzer:

Greifen Sie auf die PostgreSQL-Shell zu:

psql Ruby on Rails with PostgreSQL

Im Kontext von PostgreSQL erstellen wir nun eine neue Rolle (klassisch als Benutzer bekannt). PostgreSQL hat sein eigenes Format für Rollen und Berechtigungen. Vergessen Sie nicht, einen geeigneten Benutzernamen und ein starkes Passwort zu verwenden:

create_role

Eine Rails-App erstellen

Weisen Sie Rails an, eine neue Rails-App zu erstellen, die für die Verwendung von PostgreSQL als Datenbank konfiguriert ist:

rails_new_dummy_app

Dadurch wird ein neues Verzeichnis mit dem App-Benutzernamen erstellt. Rails erwartet im Allgemeinen, dass der Benutzername der Datenbank und der App-Name identisch sind. Der nächste Schritt besteht darin, die Rails-Datenbankkonfiguration zu konfigurieren. Die Konfigurationsdatei befindet sich an folgendem Ort:

Die Datei database.yml enthält die Daten, die die entsprechende Datenbank für die aktuelle Rails-Umgebung beschreiben. Wie der Dateiname vermuten lässt, verwendet sie YAML. YAML ist ein benutzerfreundlicher Datenserialisierungsstandard für alle Programmiersprachen.

Standardmäßig erwartet Rails unterschiedliche Datenbanken für verschiedene Umgebungen, zum Beispiel development, test, und production. Dies ist in verschiedenen Situationen nützlich, beispielsweise leert und erstellt Rails die test -Datenbank jedes Mal neu, wenn ein Rails-Test ausgeführt wird.

Hier ist ein Beispiel für eine database.yml die die development und test -Datenbanken enthält:

db_yaml

Es ist nun an der Zeit, die Änderungen wirksam werden zu lassen. Der folgende Befehl bereitet die erforderlichen Datenbanken vor, die in database.yml beschrieben sind. Jede Datenbank hat ihre eigenen Benutzer und verfügt über schema_migrations -Tabellen. Die Tabelle ist für die Daten- und Schema-Migration erforderlich:

Dieser Schritt schlägt fehl, wenn die PostgreSQL-Konfigurationsdatei pg_hba.conf fehlerhafte Konfigurationen enthält. Die Datei befindet sich an folgendem Ort:

Die folgende Zeile ist das Ziel. Anstelle von peer, sollte die Authentifizierungsmethode md5:

Ändern Sie die Zeile:

pg_hba_conf

Damit die Änderungen wirksam werden, müssen Sie den PostgreSQL-Dienst neu starten:

Führen Sie anschließend das Datenbank-Setup erneut aus:

rake_db_setup

Rails ausführen

Das Ausführen des Rails-Servers erfordert die folgende zusätzliche Komponente. Beachten Sie, dass Sie hierfür Node.js installiert benötigen (mit yarn):

webpacker_install

Die Rails-App sollte nun startbereit sein. Starten Sie den Rails-Server:

rails_server

Der Server sollte unter der folgenden URL erreichbar sein. Er führt zur Rails-Landingpage:

Um die Landingpage spannender zu gestalten, erstellen Sie ein Scaffold:

create_scaffold

rakedb_migrate

Schließlich starten Sie den Server und rufen Sie die URL erneut auf. Wir können nun Beiträge verwalten (Beiträge erstellen, bearbeiten und löschen).

Fazit

Dies ist eine grundlegende Einrichtung von Ruby on Rails mit PostgreSQL. Es gibt eine offizielle Anleitung für den Einstieg, die Ihnen bei der weiteren Nutzung von Rails helfen wird. Die von uns erstellte Beispiel-App verwendet PostgreSQL. Auf diese Weise können Sie jede App erstellen, die PostgreSQL für ihre Funktionen nutzt.

Viel Spaß beim Programmieren!

author

Pranay Kapgate

Autor · CloudSigma

Preslav Dobrev ist ein kreativer Designer bei CloudSigma und konzentriert sich auf eine konsistente Unternehmensidentität durch traditionelle und innovative Marketingkanäle. Er versteht es meisterhaft, künstlerische Vision mit strategischem Marketing zu verbinden, um wirkungsvolle Markengeschichten zu schaffen.

Kommentare

Noch keine Kommentare. Schreiben Sie den ersten.