我有一个使用 rails 3.2.8 和 MySQL 的简单应用程序正在开发中,当我尝试使用此命令 > heroku run rake db:migrate 我有这个错误: PG::Error: ERROR: column "name" of relationship "users"已经存在:ALTER TABLE“用户”添加列“名称”字符变化(255)
这是我的 schema.rb
我不知道该怎么做,以解决此错误。
我有一个使用 rails 3.2.8 和 MySQL 的简单应用程序正在开发中,当我尝试使用此命令 > heroku run rake db:migrate 我有这个错误: PG::Error: ERROR: column "name" of relationship "users"已经存在:ALTER TABLE“用户”添加列“名称”字符变化(255)
这是我的 schema.rb
我不知道该怎么做,以解决此错误。
Heroku 仅使用 PostgreSql,因此您必须将 gemfile 从 mysql 更改为 PG,或者仅将 mysql 用于测试/本地和 PG 用于生产
gem 'PG' :group => :production
您在 Gemfile 中正确设置了生产数据库:
group :production do
gem 'pg'
end
但是由于第 14 行,您还可以将 gem 包含在所有环境中:
gem 'pg'
您应该指定 mysql 是仅用于开发/测试的 gem:
group :development, :test do
gem 'mysql'
end
至于您的错误,听起来用户表中已经存在列名。另一个迁移是否添加了该列?