我创建了一个新的rails项目rails new devise_gem_app -d postgresql
并将config/database.yml
更改为:
default: &default
adapter: postgresql
encoding: unicode
username: devise_gem_app
password: devise_gem_app
host: localhost
development:
<<: *default
database: devise_gem_app_development
test:
<<: *default
database: devise_gem_app_test
但我不知道如何将用户连接到此数据库
我创建了一个这样的用户:createuser devise_gem_app -W
将其设置为超级用户,并将密码设置为:devise_gem_app。
但是当我尝试rake db:migrate
时,我得到了:
PG::ConnectionBad: FATAL: password authentication failed for user "devise_gem_app"
FATAL: password authentication failed for user "devise_gem_app"
我甚至将pg_hbf.conf
的最后一行变为:
#local replication postgres trust
......什么都没有......
我知道这应该很容易,但我只是看不出我做错了什么。
答案 0 :(得分:0)
我不确定createuser
命令在做什么,但你总是可以直接在postgres中设置devise_gem_app
用户的密码。
ALTER user devise_gem_app WITH password 'devise_gem_app';
答案 1 :(得分:0)
create user user_name with password 'password' createdb;
在pg_hbf.conf
档案中
#Database administrative login by Unix domain socket
local all postgres peer
答案 2 :(得分:0)
最后,我按照本教程结束了:http://www.cyberciti.biz/faq/howto-add-postgresql-user-account/
但我很不高兴看来rails似乎不支持,为新项目db创建新用户,这似乎是常见的做法。