在OSX系统上使用PostgreSQL进行Rails测试数据库时出现错误

3

最近我迁移到了PostgreSQL,但在创建测试数据库时遇到了问题。每当我运行Rake任务时,似乎都会破坏我访问已创建的测试数据库的能力。例如,如果我运行以下命令:

createdb -Ouser -Eutf8 example_test

我可以完美地运行测试,但是如果我运行rake任务,我会收到以下错误:

.rvm/gems/ruby-1.9.2-p180@standard/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:991:in `initialize': FATAL: database "example_test" does not exist (PGError)

如果我像这样创建一个新的测试数据库:

createdb -Ouser -Eutf8 example2_test

一切都会重新运作,但当我需要运行一个rake任务时就不行了。有人知道这个问题是什么吗?

2个回答

4

非常感谢。已经花了过去一个小时来解决这个问题。这是我的一个愚蠢错误。 - rohitmishra

0
也许你可以查看 log/development.log 来了解为什么数据库被删除?并查看 rake 任务代码本身以了解它在做什么。
通常,测试数据库是基于 config/database.yml 通过 rake db:test:prepare 生成的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接