2012-03-29 3 views
5

Ich habe mehrere Beispiele mit Datamapper gefunden und konnte sie zum Laufen bringen. Alle diese Beispiele gelten für eine SQLite-Datenbank. Ich versuche, Datamapper mit Postgresql zu verwenden.Wie bekomme ich Datamapper um mit einer postgresql Datenbank zu arbeiten?

Ich habe den Aufruf in Datamapper von SQLite3 zu Postgres geändert, und ich habe bereits dm-Postgres-Adapter installiert. Aber es funktioniert immer noch nicht.

Was muss ich noch tun?

+0

Können Sie sho w wir Ihren Konfigurationsbereich für Postgres db? –

+0

Ich habe sqlite3 so geändert, dass es wie folgt aussieht DataMapper.setup (: default, "postgres: // # {Dir.pwd} /database.pg") –

Antwort

8

Im Gegensatz zu SQLite speichert PostgreSQL nicht Datenbanken in einzelnen Dateien speichern.

Nachdem Sie created your database haben, versuchen Sie so etwas wie dieses:

DataMapper.setup :default, { 
    :adapter => 'postgres', 
    :host  => 'localhost', 
    :database => 'your-database-name', 
    :user  => 'postgres', 
} 

auf Ihrem PostgreSQL je nach Konfiguration müssen Sie als ein anderer Benutzer verbinden, und/oder ein :password auch liefern.

Sie können auch die Kurzform verwenden:

DataMapper.setup(:default, 'postgres://user:[email protected]/database') 
2

Eine weitere nette Verbindungszeichenfolge, die mit Heroku funktioniert:

DataMapper.setup(:default, ENV['DATABASE_URL'] || "postgres://user:[email protected]/[YOUR_DATABASE_NAME]") 

Quelle: http://postgresapp.com/documentation

aber ich habe nicht gesehen, alles, wo DataMapper die Postgresql-Datenbank wie Sqlite erstellen wird

Verwandte Themen