Als je een fout hebt:
PG::Error
fe_sendauth: no password supplied
Je hebt goed nieuws, je app kan nu werken met de PostgreSQL-database. (Maar je moet iets configureren)
Na het installeren van PostgreSQL, kunt u een nieuwe rails-app maken met PostgreSQL met de opdracht:
rails new my_app -d postgresql
Dit is database.yml
wordt gemaakt:
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:
U ziet dat, drie databases hebben username
en password
veld, dit is accountgebruiker in Postgresql, drie databases in database.yaml
bestand wordt gemaakt door deze gebruiker. U moet dus username
. opgeven en password
ervoor. Standaard na installatie van Postgresql, het heeft een gebruiker gemaakt met gebruikersnaam postgresql
en wachtwoord is postgresql
. Je kunt het gebruiken.
Als u een andere gebruiker wilt gebruiken, opent u gewoon pgAdmin III
en maak een nieuwe gebruiker aan door met de rechtermuisknop te klikken op Login Roles
en kies New login role
om een nieuwe gebruiker met wachtwoord aan te maken. Zet dan die gebruikersnaam en wachtwoord in database.yaml
bestand.
Daarna hoef je alleen nog maar pg_hba.conf
. te zoeken en te openen bestand om een configuratie voor app te maken, kan werken met PostgreSQL. Ik gebruik Windows al een lange tijd niet meer, dus ik weet niet zeker waar het is, maar je kunt het vinden in de map waarin je PostgreSQL hebt geïnstalleerd. Voorbeeld, als u installeert op E:\
partitie, misschien kun je het vinden in:
E:\PostgreSQL\version\data
Nadat je het hebt gevonden, open en zoek een regel:
# "local" is for Unix domain socket connections only
local all all ident sameuser
Verander het in:
# "local" is for Unix domain socket connections only
local all all md5
Start vervolgens uw Postgresql-database opnieuw. Om een database voor de app te maken, voer je rake db:create
. uit of rake db:create:all
. Je app kan nu de PostgreSQL-database gebruiken, zo blij :).