Rake任务似乎忽略了database.yml配置

时间:2015-07-21 16:23:07

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

我正在使用MAC OS X以及通过Homebrew安装的postgresql。我正在使用Rails 4.2.1和ruby 2.2.0进行开发。与postgresql服务器的连接很好,但由于某种原因,每个应用程序都访问数据库“kstavrou”,这是我的系统用户名,作为开发数据库,​​并创建数据库.yml定义的其余部分。如果你有超过1个rails应用程序,这很麻烦。

rake db:create output:

Konstantinoss-MacBook-Pro:ecomm-intel kstavrou$ rake db:create
kstavrou already exists
ecomm_intel_test already exists
奇怪的是,如果我清空database.yml仍然可以很好地连接到postgresql并尝试再次创建数据库“kstavrou”执行所有迁移,而不尝试创建测试数据库。 rake db:create output:

Konstantinoss-MacBook-Pro:ecomm-intel kstavrou$ rake db:create
kstavrou already exists

的database.yml

default: &default adapter: postgresql host: localhost encoding: utf8 username: pguser password: 123456 pool: 5 production: <<: *default database: ecomm_intel_prod development: <<: *default database: ecomm_intel_dev test: <<: *default database: ecomm_intel_test

1 个答案:

答案 0 :(得分:3)

问题是ENV ['DATABASE_URL']已设置(通过某些安装脚本),因此它覆盖了database.yml配置,如steve klein所示,所以我只是将其删除了。

`export DATABASE_URL=postgres:///$(whoami)`