“数据库配置不指定适配器”错误与Rails 3.2中的PG宝石

问题描述:

运行“rake db:migrate”时,我得到“数据库配置不指定适配器”错误。“数据库配置不指定适配器”错误与Rails 3.2中的PG宝石

这里是我的database.yml:

development: 
 adapter: postgresql 
 database: development 
 username: ########## 
 password: ########## 
 host: localhost 
 pool: 5 
 timeout: 5000 

我的Gemfile名单:

gem 'pg' 

找出它是什么。我为自己写了一个database.yml文件,并插入了大量不可见的字符,从而阻止了YAML的读取。

+2

你在开玩笑吧。 – 2012-10-30 17:01:37

+1

我真的,真的希望我是。 – Dan 2012-11-06 17:56:19

+2

我真的很希望你也是,因为我遇到了同样的问题,并通过查看这个答案来解决它。 – 2012-11-07 16:10:17

你是否确信你设置的环境中发展?

这是我的mac上的export RAILS_ENV=development

+0

放置在哪里?可能值得注意的是我在OSX Lion中。 – Dan 2012-03-21 04:08:15

+0

在启动导航服务器或运行迁移任务之前在您的终端中键入此代码 – Nikhil 2012-03-21 04:10:16

+0

否。任何其他想法?我仍然得到“数据库配置不指定适配器”,即使是在“rake db:migrate”之前执行的。 – Dan 2012-03-21 19:52:56

在我的情况

RAILS_ENV=development rake db:migrate 

的伎俩。

+1

您可以随时将'export RAILS_ENV = development'添加到'〜/ .bashrc'文件中。 – 2012-12-17 07:23:25

+0

或者你可以键入'rake db:migrate RAILS_ENV = development',它告诉rake将该变量提供给它的上下文。 – 2014-08-21 20:35:00

+0

这是一个坏主意。有时候,你需要RAILS_ENV =测试。 – Dan 2015-02-03 05:32:59

在我对Rails应用程序进行了一些最近更改之后,我也遇到了这个错误。首先错误出现在unicorn日志中,所以我尝试运行rake db:setup,并在那里得到了错误。

在我的情况下,我以某种方式在test数据库定义之前获得了一个额外的空间。所以我database.yml是这样的:

... 
test: 
    adapter: postgresql 
... 
production: 
    adapter: postgresql 
... 

,而不是这样的:

... 
test: 
    adapter: postgresql 
... 
production: 
    adapter: postgresql 
... 

我删除了空间和固定的问题。