Ruby on rails 3 Heroku-迁移失败,如何将迁移更改为在Heroku上运行?
我有一个迁移文件,它执行以下操作:Ruby on rails 3 Heroku-迁移失败,如何将迁移更改为在Heroku上运行?,ruby-on-rails-3,heroku,Ruby On Rails 3,Heroku,我有一个迁移文件,它执行以下操作: class ChangeLoginToUsername < ActiveRecord::Migration def self.up remove_column :users, :login, :string add_column :users, :username, :string end def self.down remove_column :users, :username, :string add_c
class ChangeLoginToUsername < ActiveRecord::Migration
def self.up
remove_column :users, :login, :string
add_column :users, :username, :string
end
def self.down
remove_column :users, :username, :string
add_column :users, :login, :string
end
end
这在我的本地开发人员上运行得很好,但我现在注意到,当我尝试在Heroku上运行此迁移时,remove_列上的field type的第三个参数出错。是否有一种只为Heroku编写/运行特定迁移的方法?在这次迁移之后,我还需要运行两次迁移
非常感谢您一如既往地提供的任何帮助删除列的数据类型没有意义:
class ChangeLoginToUsername < ActiveRecord::Migration
def self.up
remove_column :users, :login
....
end
def self.down
remove_column :users, :username
...
end
end
我知道-如果你读了上面的文章,我已经注意到了这一点,但它已经是一个迁移文件,在我的本地开发环境中运行良好,我只是不知道如何将其更改为在Heroku上运行:我想我不明白问题是什么?你为什么不删除第三个参数并运行迁移呢?我已经在开发中运行了迁移,并且成功了,如果我编辑迁移文件并尝试在Heroku上运行它,它不会更新,仍然尝试运行旧文件-有什么想法吗?在删除数据库后重新运行db:setup。我设法绕过它,只是使用一些git命令获得不同的版本并运行它,然后Heroku重新启动-现在似乎可以了,谢谢