ruby-on-rails - Rails- Heroku 请安装 postgresql 适配器 : gem install activerecord-postgresql-adapter

标签 ruby-on-rails postgresql heroku rubygems mysql2

<分区>

请帮我解决我的问题 我已经阅读了这里的所有主题,但仍然无法理解发生了什么

所以我运行 git push heroku master

这是我得到的

rake aborted!
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.)

之后我更新了我的 Gemfile,就在这里

ruby '1.9.3'
source 'https://rubygems.org'

gem 'rails', '3.2.13'
gem 'mysql2'
gem 'pg'

group :assets do
  gem 'sass-rails',  '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
  gem 'therubyracer', :platform => :ruby
end

gem 'less-rails', '~> 2.2.6'
gem 'sass-rails', '~> 3.2.3'
gem 'twitter-bootstrap-rails', '2.2.4'

gem 'jquery-rails'
gem 'devise'
gem 'haml', '~> 4.0.0'
gem 'haml-rails'
gem 'cancan'
gem 'rails-i18n', '~> 3.0.0.pre'
gem 'i18n-js', :github => 'fnando/i18n-js'
gem 'obscenity'
gem 'thin'
gem 'will_paginate-bootstrap'
gem 'nifty-generators', :group => :development
gem 'rails_12factor'
gem 'mocha', :group => :test

之后 bundle install 显示错误

这里是 config/database.yml

production:
  adapter: mysql2
  host: 127.0.0.1
  encoding: utf8
  reconnect: false
  database: xxx_production
  pool: 5
  username: root
  password: "xxxx"
  socket: /var/run/mysqld/mysqld.sock
development:
  adapter: mysql2
  host: localhost
  encoding: utf8
  reconnect: false
  database: xxx_development
  pool: 5
  username: root
  password: "xxxx"
  socket: /var/run/mysqld/mysqld.sock

test:
  adapter: mysql2
  host: localhost
  encoding: utf8
  reconnect: false
  database: xxx_test
  pool: 5
  username: root
  password: "xxxx"
  socket: /var/run/mysqld/mysqld.sock

你们有什么想法吗?

提前致谢!

最佳答案

Heroku 在 PostgreSQL 数据库上运行最简单。

您同时安装了 pgmysql2 并且正在使用 mysql2 作为生产数据库。

在 Heroku 的生产中使用 PG 数据库会容易得多。

为此,首先清除 database.yml 的生产部分 然后,在您的 Gemfile 中,将 pg gem 放入生产部分,如下所示:

group :production do
  gem "pg"
end

如果你真的想使用mysql,那么看看这些文章

https://devcenter.heroku.com/articles/heroku-mysql

https://addons.heroku.com/cleardb

关于ruby-on-rails - Rails- Heroku 请安装 postgresql 适配器 : gem install activerecord-postgresql-adapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22331939/

相关文章:

ruby-on-rails - Rails 3 中的 rdiscount + haml 问题

sql - Rails/Sql - 对搜索结果进行排序/分组,这样实体的重复只会在其他实体出现之后发生

ruby-on-rails - 没有列的事件管理索引页面排序

PostgreSQL alter type timestamp without time zone -> with time zone

ruby-on-rails-3 - 使用 Heroku 和 Procfile 重新排列优先级队列。崩溃

ruby-on-rails - 如何使用 devise、omniauth 进行 facebook 登录 - 无法克服 Controller 错误

windows - Windows 上的 PostgreSQL docker 容器

sql - 修复 Postgres 序列生成的数字中的孔/间隙

javascript - 在 heroku 上使用 node.js 自动添加页面?

ruby-on-rails - 将 Rails 应用程序部署到 Heroku 时出错 : simple_form issue