0

我想用不同的用户设置我的测试和开发数据库。我的database.yml文件如下所示:

test:
  adapter: postgresql
  database: test_db
  username: test_user
  password: test_pass
  host: localhost
  port: 5432

development:
  adapter: postgresql
  database: dev_db
  username: dev_user
  password: devpass
  host: localhost
  port: 5432

我通常使用 Sinatra 进行开发,因此习惯于在使用rake任务运行迁移等之前手动创建我的数据库和用户。但是对于这个项目,我使用的是 Rails,我不知道如何告诉 Rails 的db:test:prepare任务使用创建数据库我指定的用户。如果我只是运行,这一切都可以工作db:migrate- 我手动创建的开发数据库设置得很好,但是当我尝试运行我的测试时,rake 任务在任务中失败了db:test:prepare

如何配置 Rails 4 以使用我想要的数据库用户而不是root其他默认值?

4

1 回答 1

0

您可以尝试使用以下方法从头开始重建它们:

bundle exec rake db:drop RAILS_ENV=test
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
于 2013-08-29T02:45:10.183 回答