微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Rails 3迁移不适用于Heroku

我有一个非常简单的迁移,它是使用生成器创建的

class AddEmailToUsers < ActiveRecord::Migration
  def self.up
    add_column :users,:email,:string
  end

  def self.down
    remove_column :users,:email
  end
end

它在当地运作良好

rake db:migrate
rails console
>> User.column_names
=> ["id","created_at","updated_at","uid","provider","name","role","email"]

我在Heroku上有两个版本的应用程序.在一个,它工作正常.另一方面,该列根本没有显示出来.

heroku rake db:migrate的输出看起来正确:

==  AddEmailToUsers: migrating ================================================
-- add_column(:users,:string)
   -> 0.0031s
==  AddEmailToUsers: migrated (0.0032s) =======================================

但该专栏不存在:

>> User.column_names
=> ["id","role"]

(顺便说一下,我所有的数据库更改都是通过生成器创建的迁移;我自己没有触及sql,也没有编辑任何迁移文件.)

这是一个生产环境,因此不能选择丢弃表.

我可以尝试的任何建议吗?

解决方法

heroku重启

为我解决了这个问题.

我认为这是heroku系统中的一个错误.我刚给他们发了电子邮件,要求修复.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐