Fügen Sie Ihrer database.yml einen Benutzernamen hinzu , könnte genauso gut den Namen Ihrer Anwendung (oder eine Variante des Namens) als Benutzernamen verwenden, ich werde app_name verwenden als Platzhalter:
development:
adapter: postgresql
encoding: utf8
database: app_development
pool: 5
username: app_name
password:
Erstellen Sie dann den Benutzer (auch bekannt als "Rolle") in PostgreSQL mit psql.exe :
$ psql -d postgres
postgres=# create role app_name login createdb;
postgres=# \q
Die erste Zeile befindet sich in Ihrem Terminal, die nächsten beiden befinden sich in psql . Dann machen Sie Ihren rake db:create .
Der User user ist möglicherweise ein Standardwert, aber user wird in PostgreSQL bereits für andere Zwecke verwendet, daher müssten Sie es zitieren, um die Groß-/Kleinschreibung beizubehalten, wenn Sie User verwenden möchten als Benutzername:
postgres=# create role "User" login createdb;
Es ist sowieso besser, einen Benutzer pro Anwendung zu erstellen.
Sie werden ähnliche Dinge für Ihren test tun wollen Eintrag in database.yml auch.