我有一个非常简单的迁移,它是使用生成器创建的
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,也没有编辑任何迁移文件.)
这是一个生产环境,因此不能选择丢弃表.
我可以尝试的任何建议吗?