Pokud máte chybu:
PG::Error
fe_sendauth: no password supplied
Máte dobrou zprávu, vaše aplikace nyní může pracovat s databází PostgreSQL. (Musíte ale něco nakonfigurovat)
Po instalaci PostgreSQL můžete vytvořit novou aplikaci rails pomocí PostgreSQL příkazem:
rails new my_app -d postgresql
Toto je database.yml bude vytvořen:
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:
Vidíte, že tři databáze má username a password pole, toto je uživatel účtu v Postgresql, tři databáze v database.yaml soubor vytvoří tento uživatel. Musíte tedy zadat username a password pro to. Výchozí po instalaci Postgresql se vytvořil uživatel s uživatelským jménem postgresql a heslo je postgresql . Můžete to použít.
Pokud chcete použít jiného uživatele, stačí otevřít pgAdmin III a vytvořte nového uživatele kliknutím pravým tlačítkem na Login Roles a zvolte New login role pro vytvoření nového uživatele s heslem. Poté zadejte uživatelské jméno a heslo do database.yaml soubor.
Poté už jen potřebujete najít a otevřít pg_hba.conf soubor, aby se nějaká konfigurace pro aplikaci mohla pracovat s PostgreSQL. Windows nepoužívám dlouho, takže si nejsem jistý, kde to je, ale můžete to najít ve složce, kde jste nainstalovali PostgreSQL. Příklad, pokud instalujete na E:\ oddíl, možná ho najdete v:
E:\PostgreSQL\version\data
Až to najdete, otevřete a najděte řádek:
# "local" is for Unix domain socket connections only
local all all ident sameuser
Změňte jej na:
# "local" is for Unix domain socket connections only
local all all md5
Poté restartujte databázi Postgresql. Chcete-li vytvořit databázi pro aplikaci, spusťte rake db:create nebo rake db:create:all . Vaše aplikace nyní může používat databázi PostgreSQL, takže jsme rádi :).