工作我有使用發電機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