使用PG在本地设置第二个Rails应用程序

时间:2015-04-12 14:57:14

标签: ruby-on-rails postgresql ruby-on-rails-4 ruby-on-rails-4.2 postgresapp

我已经有一个Rails应用程序,成功使用Postgres.app。

我甚至不记得我为创建第一个数据库并连接到Rails做了什么,但是它有效,这就是我在database.yml中所拥有的

development:
  adapter: postgresql
  database: gnossy_development
  pool: 5
  timeout: 5000

现在我的第二个Rails应用程序已经用

创建了应用程序

rails new my_app --database=postgresql --skip-test-unit

Rails在database.yml

中为我创建了这个
default: &default
  adapter: postgresql
  encoding: unicode
  pool: 5

development:
  <<: *default
  database: my_app_development

我需要做什么才能让我的第二个应用与PG数据库连接?

rake db:create:all会产生"FATAL: role "my_app" does not exist"

1 个答案:

答案 0 :(得分:0)

您收到的错误是postgres错误。

"FATAL:  role "my_app" does not exist"

当您运行迁移时,应用会尝试登录数据库以执行迁移。

此错误告诉您,在数据库中您没有名为“my_app”的角色

如果您想检查这是否属实,请登录您的postgres数据库:

来自控制台:

psql

进入后,请检查您的角色:

\du

此命令将返回角色与其权限的关系。

要在rails应用中修复此问题,请尝试将具有PG权限的用户和密码凭据添加到 database.yml

username: your_user
password: your_pasword