/ / So finden Sie den Datenbanknamen in Rails Console - Postgresql, Ruby-on-Rails-4

So finden Sie den Datenbanknamen in der Rails-Konsole - postgresql, ruby-on-rails-4

Das ist komisch. In meinem Rails 4 database.yml habe ich folgendes:

development:
adapter: postgresql
encoding: unicode
database: inspector_development
password:
pool: 5

Ich habe die Produktionsdatenbank von Heroku kopiert und mit diesem Formular in meine lokale Kopie von Postgresql importiert

curl -o latest.dump `heroku pgbackups:url --account personal`
pg_restore --verbose --clean --no-acl --no-owner -h localhost -U sam -d inspector_development latest.dump

Das Ergebnis zeigte die 88 erwarteten Benutzer inPGadmin in der Datenbank inspector_development auf osx. Die User-Tabelle zeigt jedoch auch nach dem Neustart der Schienen-App immer nur einen Benutzer an, nicht die 88, die ich in PGadmin sehe.

Ich habe gegoogelt, wie Sie feststellen können, was Rails als Eigenschaften des Datenbanknamens ansieht, um zu ermitteln, wo es diese nicht vorhandenen Datensätze findet.

Bei genauerer Betrachtung der User-Tabelle in PGadmin sehe ich null Spalten. Vielleicht irrt sich PGadmin? Ich kann nicht feststellen, wo der DB Rails sucht, damit ich das, thx, sam, beheben kann

Antworten:

11 für die Antwort № 1

Dies funktioniert in Rails 3 und Rails 4

ActiveRecord::Base.connection.current_database

Dies funktioniert jedoch nur mit Treibern, die diese Methode implementiert haben. Zum Beispiel funktioniert es nicht für SQLite, aber für Mysql und Postgres.