工作我有使用发电机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的耙分贝输出:迁移期待权:
== AddEmailToUsers: migrating ================================================
-- add_column(:users, :email, :string)
-> 0.0031s
== AddEmailToUsers: migrated (0.0032s) =======================================
但该列不存在:
>> User.column_names
=> ["id", "created_at", "updated_at", "uid", "provider", "name", "role"]
(顺便说一句,我的所有数据库更改已通过发电机创建的迁移;我自己也没有碰过SQL,也没有编辑过任何迁移文件。)
这是一个生产环境,所以丢弃表不是一个选项。
我可以尝试的任何建议吗?
你重新启动了你的控制台吗?另外,检查你的数据库在heroku上的更新表,以防万一。 – Shreyas 2011-03-02 18:34:18
通过“重新启动控制台”,你的意思是再次运行heroku控制台?如果是这样,那么是的,我做到了。 – 2011-03-02 18:35:37
如何检查Heroku上的数据库?我可以直接在Heroku中运行SQL命令吗? – 2011-03-02 18:36:01