Om du har fel:
PG::Error
fe_sendauth: no password supplied
Du har goda nyheter, din app kan fungera med PostgreSQL-databasen nu. (Men du måste konfigurera någonting)
Efter att ha installerat PostgreSQL kan du skapa en ny rails-app med PostgreSQL genom kommando:
rails new my_app -d postgresql
Det här är database.yml
kommer att skapas:
development:
adapter: postgresql
encoding: unicode
database: my_app_development
pool: 5
username: my_app
password:
test:
adapter: postgresql
encoding: unicode
database: my_app_test
pool: 5
username: my_app
password:
production:
adapter: postgresql
encoding: unicode
database: my_app_production
pool: 5
username: my_app
password:
Du ser att tre databaser har username
och password
fältet är detta kontoanvändare i Postgresql, tre databaser i database.yaml
filen skapas av denna användare. Så du måste ange username
och password
för det. Standard efter installationen av Postgresql skapades en användare med användarnamnet postgresql
och lösenordet är postgresql
. Du kan använda den.
Om du vill använda en annan användare, öppna bara pgAdmin III
och skapa en ny användare genom att högerklicka på Login Roles
och välj New login role
för att skapa en ny användare med lösenord. Ange sedan användarnamnet och lösenordet till database.yaml
fil.
Efter det, allt du behöver nu är att hitta och öppna pg_hba.conf
fil för att göra någon konfigurering för app kan fungera med PostgreSQL. Jag använder inte Windows på länge, så jag är inte säker på var det är, men du kan hitta i mappen du installerade PostgreSQL. Exempel, om du installerar på E:\
partition, kanske du kan hitta den i:
E:\PostgreSQL\version\data
När du hittat den öppnar du och hittar en rad:
# "local" is for Unix domain socket connections only
local all all ident sameuser
Ändra det till:
# "local" is for Unix domain socket connections only
local all all md5
Starta sedan om din Postgresql-databas. För att skapa databas för appen, kör rake db:create
eller rake db:create:all
. Nu kan din app använda PostgreSQL-databasen nu, så glad :).