抱歉,我是Ruby on Rails的新手,我正在学习一个教程,但是我在尝试将数据库推送到heroku时遇到了麻烦。我已经在我的Linux中安装了postgresql,尝试了很多教程。
当我输入heroku rake db:migrate
时,收到以下错误消息:
弃用警告:您在供应商/插件中拥有Rails 2.3风格的插件!在Rails 4.0中将删除对这些>插件的支持。将它们移出并将它们捆绑在您的Gemfile中,或者>将它们作为lib / myplugin / *和config / initializers / myplugin.rb折叠到您的应用程序中。有关详情,请参阅>发行说明:http://weblog.rubyonrails.org/2012/01/04/rails-3-2-0-rc2->已发布。 (从/ app / Rakefile调用:7) 耙子流产了! 请安装postgresql适配器:
gem install activerecord-postgresql-adapter
(pg是>不是捆绑包的一部分。将其添加到Gemfile。)任务:TOP => db:migrate => DB:load_config (通过使用--trace运行任务查看完整跟踪)
我的Gemfile是这样的:
source 'https://rubygems.org'
gem 'rails', '3.2.2'
gem 'sqlite3'
group :production do
gem 'pg'
end
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
答案 0 :(得分:3)
如错误中所述,您需要安装postgresql-adapter
Please install the postgresql adapter: gem install activerecord-postgresql-adapter (pg is >not part of the bundle. Add it to Gemfile.)
使用gem install activerecord-postgresql-adapter
安装它。您还应该将gem 'pg'
添加到Gemfile并运行bundle install
。
如上所述here,请查看您的database.yml文件以检查您是否编写了“postgres”而不是“postgresql”。
答案 1 :(得分:1)
我也遇到了这个错误(在2015年也没有减少),并将其追踪到* cough *没有将我最近对database.yml文件的更改暂存到我的git repo中。
我认为是新手的错误。
git commit -am 'added yaml production strings'
git push heroku master
现在我实际上发送了我认为发送的文件,我不再收到gem install activerecord-postgresql-adapter
消息。
我已经设法避开 git 和 heroku 很长一段时间 - 真的 - 这些小小的打嗝现在变得越来越快。我似乎花了大部分时间来弄清楚实际发生的事情和我认为的情况。