我正在尝试将应用程序从Rails 3.0.7升级到3.1.1。当我尝试在3.1.1下运行迁移时,会生成迁移文件但没有前导时间戳。例如:
$ rails g migration add_foo_to_users foo:boolean
invoke active_record
create db/migrate/_add_foo_to_users.rb
生成的文件的内容看起来正确(使用新的酷更改方法),但迁移文件似乎应该更像db / migrate / 20111012002448_add_foo_to_users.rb。
我怀疑我错过了一些简单的东西,但整个周末都试图弄清楚它是什么。搜索显示我发现没有任何帮助。在此之前迁移一直在进行,所以我采取的升级步骤中的某些内容似乎已经打破了它。任何关于在哪里看的建议将不胜感激。感谢。
答案 0 :(得分:1)
以防万一有人在遇到同样的问题后到此为止。将整个应用程序复制到另一个目录,并与新Rails应用程序的全新安装进行比较后,我将其缩小到了all_migrate gem的配置块。当我注释掉此配置的行时,正确生成了迁移文件。取消注释相同的行会重新创建错误。
答案 1 :(得分:1)
我已将此问题追溯并将其修复为fort_migrate的GateGuru分支。拉出请求正在等待合并回到also_migrate。
对于在此期间被此咬过的人,拉取请求位于:https://github.com/winton/also_migrate/pull/10
您也可以通过Bundler从我的fork安装来解决问题:
gem 'also_migrate', '0.3.5', :git => 'git@github.com:GateGuru/also_migrate.git', :branch => '8-fix-rails-3_1-timestamps'